[pmwiki-users] Foldered wiki.d Page Store for more than 100k pages in a group
ABClf
languefrancaise at gmail.com
Fri Aug 7 15:21:42 CDT 2015
Great ;)
tested and working ;
I have had to update the dir upload as well :
$UploadPrefixFmt = '/$Group/{$DirPrefix}/$Name';
Thank you so much for your support.
2015-08-06 22:42 GMT+02:00 Petko Yotov <5ko at 5ko.fr>:
> On 2015-08-06 19:10, ABClf wrote:
>>
>> $WikiDir = new PageStore('wiki.d/{$Group}/{$Name1}/{$FullName}');
>>
>> My biggest group is for Quotes ; pages are named numerically, from 1,
>> 2, 3, etc., to 99500 (still growing) ;
>> I would like the coming next pages named 100000 and up to be saved in
>> folder /11, /12, etc., rather than in folder /1 ;
>
>
> You can create a custom PageVariable and use it when defining the PageStore
> class.
>
> function DirPrefix($group, $name) {
> if ($group == 'Quotes' && preg_match('/^(\\d+)\\d{4}$/', $name, $m))
> return $m[1]; # >= 100000
>
> return function_exists("utf8string")
> ? utf8string($name, 0, 1)
> : $name{0};
> }
> $FmtPV['$DirPrefix'] = 'DirPrefix($group, $name)';
> $WikiDir = new PageStore('wiki.d/{$Group}/{$DirPrefix}/{$FullName}');
>
> This will keep the current directories with the first letter, in all groups.
> For pages in the Quotes group, for names longer than 4 digits, it will
> remove the last 4 digits, so
>
> Quotes.99999 will go into wiki.d/Quotes/9/
> Quotes.100001 will go into wiki.d/Quotes/10/ (not /11)
> Quotes.999999 will go into wiki.d/Quotes/99/
> Quotes.2222222 will go into wiki.d/Quotes/222/
> Quotes.98765432 will go into wiki.d/Quotes/9876/
>
> This will also take care of the same problem when you go above 999999. :-)
>
> Petko
>
> --
> Change log : http://www.pmwiki.org/wiki/PmWiki/ChangeLog
> Release notes : http://www.pmwiki.org/wiki/PmWiki/ReleaseNotes
> If you upgrade : http://www.pmwiki.org/wiki/PmWiki/Upgrades
>
> If this message helped you and saved you time, feel free to make
> a small contribution: http://5ko.fr/donate-ml (mailing list).
>
>
> _______________________________________________
> pmwiki-users mailing list
> pmwiki-users at pmichaud.com
> http://www.pmichaud.com/mailman/listinfo/pmwiki-users
More information about the pmwiki-users
mailing list