da-da-da, да, ключевик будет вставляться в том же падеже, что и заменяемое им существительное.
Галочка "Соблюдать морфологию". Кеи будут склоняться. Не то?---------- Добавлено 16.01.2015 в 18:03 ----------
Так:
[SCRIPT_P] k=3; // сколько кеев вставлять text=[ESTRING][ARTICLE_TEXT][/ESTRING]; explode("\r\n",readfile('D:\keysforpaste\'+$category_name[$article_category_num]+'.txt','windows-1251'),keys); c=count(keys)-1; for(i=1;i<=k;i=i+1){ text=PasteKeyword(text,'<b>'+keys[rand(0,c)]+'</b>');} print(text); function PasteKeyword(text,key){ k=0; i=strpos(text,' '); while(i>0){ c=1; i2=strpos(text,'</',i+1); if(i2>0){ c=0; i3=strpos(text,'>',i+1); if(i3>0 && i3<i2){c=1;} } if(c==1){ k=k+1; p[k]=i; } i=strpos(text,' ',i+1); } if(k>0){ r=rand(1,k); i=p[r]; text=substr(text,1,i)+key+' '+substr(text,i+1,strlen(text)-i); } return(text); } [/SCRIPT_P]
[ARTICLE_TEXT] записывается в переменную text и потом в текст вставляются слова из файла (имя файла=категория). D:\keysforpaste замени на свою папку с файлами.
Т.е. если у тебя категории: Авто, Мото, Катера, то в D:\keysforpaste должны быть три файла: Авто.txt, Мото.txt и Катера.txt со списками кеев для вставки.
qvaro, чтобы автоматом словоформа менялась? Такой встроенной функции нет. Можно сделать, если заранее в файле прописать слово в разных формах.
Из разных файлов, т.е. для каждой категории из своего файла? Ну скриптом можно в принципе.
Удалил случайно все письма. Кому не ответил, напишите ещё раз.---------- Добавлено 15.01.2015 в 23:00 ----------
[SCRIPT] u=2; // сколько слов вывести explode(' ',$page_keyword,$$wkey); $$wkey_count=count($$wkey)-1; $key=''; for(i=$$wkey_count-u+1;i<=$$wkey_count;i=i+1){$key=$key+$$wkey+" ";} print(trim($key)); [/SCRIPT]
Andy_ham, ответил.
[SCRIPT] if($current_article==1){ t=''; for(c=1;c<=$categories_count;c=c+1){t=t+'<a href="'+$category_url[c]+'">'+$category_name[c]+"</a>\r\n";} writefile('ctglist.txt',t,'windows-1251'); } [/SCRIPT]
Т.е. вместо случайных анонсов вывести список случайных категорий? Например, можно сразу через скрипт сохранить список всех категорий в файл, а потом выводить их через [RANDLIST_FROM_FILE-файл-UNIC]. В начало шаблона впиши:
[SCRIPT] if($current_article==1){ t=''; for(c=1;c<=$categories_count;c=c+1){t=t+$category_name[c]+"\r\n";} writefile('ctglist.txt',t,'windows-1251'); } [/SCRIPT]
А где выводить имя категории: [RANDLIST_FROM_FILE-ctglist.txt-UNIC] .
Обновил парсер до версии 1.8. Улучшил распознавание кодировок. Пишите, скину.
barkasian, [RANDLINKS-1][A][/RANDLINKS] .
Бывает, что надо во всех шаблонах заменить какой-то кусок кода или текст. Если шаблонов много, то руками заменять долго. Вот скрипт для замены (выполнить на вкладке Scripting):
text='текст'; // что заменить newtext='новый текст'; // чем заменить enc='windows-1251'; // кодировка шаблонов folder='templates'; explode("\r\n",getdirectories(folder),b); c=count(b); k=0; for(i=0;i<=c;i=i+1){ if(b!=''){ f=folder+'\'+b+'\page.htm'; a=readfile(f,enc); a=str_replace(text,newtext,a); writefile(f,a,enc); print(f+" - OK\r\n"); k=k+1; } } alert('Готово! '+k);