Ссылки вида ****.html

Нужно перенести существующий сайт на движок WordPress.
Страницы на сайте имеют адреса вида w ww.domain.com/***.html
Как в Вордпресе сделать такие же ссылки на страницы? Причем не на посты (с постами все понятно, нужно прописать шаблон для ЧПУ ссылок вида /%postname%.html), а именно на постоянные страницы. Если в поле "Короткая ссылка" указать "page.html" то точка автоматически убирается и получаем w ww.domain.com/pagehtml вместо w ww.domain.com/page.html
Помогите пожалуйста.

это надо ручками писать…. просто так это не сделать!!!

тут уже на эту тему говорили… вот ссылка : http://forum.maxsite.org/viewtopic.php?id=2940
…. нужно будет спросишь у автора как он это сделал!!!

Вот набросал плагинчег http://www.portal.kharkov.ua/soft/page_htm.zip
В 2.3, вроде, нормально, а в 2.2 у меня только наполовину заработал.

Ю.Б., в версии 2.3.2 тоже не работает!!!!…… 404 ошибка

мне нравится как ты всегда делаешь то, что очень актуально на нынешнее время;)

у тебя какая сборка ВП??

ааа я понял…… он на старые созданные страницы не смотрит …. только при создании новых страниц этот пермалинк работает!!!!

Ю.Б., может еще добавим к твоему плагину условие…… вот такое

if ( strstr($wp_rewrite->get_page_permastruct(), '.html') != '.html' )

думаю не помешает….. за одно будем знать что расширений хтмл будет одно!

Сейчас гляну, я в них уже запутался, болтается штук шесть… так, работает на от mywordpress. Стоит пол-плагина Remove Parents, но он не влияет. Сейчас еще раз разверну архив проверю.

upd1 Проверил. Ок. А вот на 2.3.1 от Макса почему-то делает ссылки типа /str1.htm/, т.е. со слешом в конце. Еще не разбирался.

upd2 Слеш дорисовывется когда шаблон ЧПУ со слешом на конце. С шаблоном %postname%.htm рисует красиво и работает.

даже при всем этом…. мне работа плагина не нравиться…….

плагин наглым образом вписывает линк с окончанием хтмл (например http://mysite.ru/sss.html)….. если потом поменять пермалинк, то он не сработает……. новосозданная страница теперь навсегда будет идти под ссылкой хтмл (только так: http://mysite.ru/sss.html , так http://mysite.ru/sss он больше виден не будет)

… я шас думаю над тем как сделать так, чтоб пермалинки вели себя так же как и в категорих и постах?!

ааа я понял...... он на старые созданные страницы не смотрит .... только при создании новых страниц этот пермалинк работает!!!!

Еще как смотрит! Он меняет правила реврайта. Может, стоит лдишний раз ткнуть "обновить пермалинки"?

Ю.Б., может еще добавим к твоему плагину условие...... вот такое

if ( strstr($wp_rewrite->get_page_permastruct(), '.html') != '.html' )

думаю не помешает..... за одно будем знать что расширений хтмл будет одно!

Не понял. 🙂 Потом подумаю.

ну вдруг ссылка будет http://mysite.ru/sss.htm.html ….. вот для этих случаев и ставиться условие…… можно и дальше импровизировать!

обновил пермалинки…….. вроде шас все пашет….. класс )))))

а может усовершенствовать этот плагин до того, что она сама обновляет пермалинки, а при деактивации плагина все возвращается на свое место путем очередного обновления пермалинков

Знаешь как? Я – нет. Может, попозже посмотрю. Хотя на тестовом я не обновлял, сразу пошло. Надо бы на 2.2 попробовать, может и там сработает?

А sss.htm.html не получится, страницу со слагом sss.htm не сделаешь, wp точку удаляет и остается только ssshtm.

да знаю….. $wp_rewrite->flush_rules(); — обновляет правила пермалинка.

<?php
/*
Plugin Name: Page_Htm
Plugin URI: http://blog.portal.kharkov.ua/
Description: Add htm extension to page url (WP2.3)
Author: Yuri 'Bela' Belotitski
Version: 1.0 beta
Author URI: http://www.portal.khakrov.ua/
*/

add_filter('init','pm');
function pm() {
    global $wp_rewrite;
    $wp_rewrite->page_structure='%pagename%.html';
    $wp_rewrite->flush_rules();
}


?>

думаю если в функцию деакцивацци добавить вот это:

  $wp_rewrite->page_structure='%pagename%';
    $wp_rewrite->flush_rules();

... или что-то в этом роде....

то после деакцивации все должно вернуться на место….. (я еще не проверял момент деакцивации)

Тогда уже flush_rules() делать не каждый раз, а только при активации/деактивации плагина. Наверно, не помешает. Что скажут знатоки? Что происходит по flush_rules()?

Сделал с flush_rules. Архив обновил. Таки да. Спасибо ozono!

я тут проверяю флаш_рул….. все работает…. но опять есть но…. ссылки на странице не обновились. Пермалинк сам пошел а вот на главной странице ссылки на статистические страницы не поменялись……

я работаю над флаш_рулом…..

есть на пермалинк еще вот это : $wp_rewrite->mod_rewrite_rules()

Ю.Б., ты проверил работу flush_rules()???

или у меня вордпресс глючит или все таки ссылка не обновляется при флаше, но работает с новыми правилами

———–

прошу прощения……. какой я паникер)))) я плагин не активировал)))):lol::lol::lol: Все прекрасно работает!!

так что можно сделать классный плагин……. даже можно сделать поле в которое можно вписать желаемое расширение страницы

я плагин не активировал)))):lol::lol::lol: Все прекрасно работает!!

Это что! Я тут намедни чуть крышей не поехал, пытаясь понять, почему изменений не видно. Оказалось, что я правлю файл не в той директории. 😆

Оказалось, что я правлю файл не в той директории. :lol:

мы с тобой сошли сума….. какая досада)))) :lol::lol::lol: Уже у меня тут несколько версий плагина)))… скоро дам сбой)))

А в 2.2.3 не хочет работать.

таакк….. шас посмотрим и проверим….

Ю.Б. у меня все работает…… и даже в вордпрессе 2.2.3 — специально скачал и установил…. Все работает!!!!

Значит примечание for wp2.3 удаляем из плагина. 🙂

(Я удивляюсь, что мой 2.2.3 еще хоть как-то работает после всего, что ему довелось пережить.)

Плагин готов: http://slil.ru/25412193 (срок этой ссылки 1 месяц)

Совместно с Ю.Б. сделан пермалинк на страницы. Если есть ошибки в англ….. то сорри))))

[quote]Мах, Ю.Б., sonika, mikolka, идр прошу Вас протестировать и проверить плагин. Я думаю проблем с ним не будет.

Мах, если ты не против, то я бы хотел, чтоб ты взял этот плагин и поселил его на свой сайт. Было бы хорошо если бы этот плагин был у тебя и чтоб всем тем кому он нужен смог бы скачать его с твоего сайта.

Спасибо.[/quote]
P.S. не успел русифицировать плагин.

Пользователь с правами "Подписчик" может изменять шаблон пермалинка. Как это исправить?

Пользователь с правами "Подписчик" может изменять шаблон пермалинка. Как это исправить?
измени уровень доступа $pg->access_level = 0;   --  уровни надо показывать в числах от 0 до 9 (0 - для всех, а 9 для админа)

Спасибо! Буду знать.

Вот набросал плагинчег http://www.portal.kharkov.ua/soft/page_htm.zip
В 2.3, вроде, нормально, а в 2.2 у меня только наполовину заработал.

вроде заработал, спасибо.

один только вопрос – как теперь настроить переадресацию со старых ссылок на новые? не хотелось бы вручную каждую ссылку указывать в htaccess

Плагин готов: http://slil.ru/25412193 (срок этой ссылки 1 месяц)

P.S. не успел русифицировать плагин.

тоже не пашет – при открытии сайта выдает:

Catchable fatal error: Object of class page_permalink could not be converted to string in C:\xampp\htdocs\flector\wp-includes\classes.php on line 157

у тебя какая версия вордпресса???? я проверял во всех версиях 2.х.х — все работает как надо!!!

2.3.2 – от wordpress.org

А версия php? У 5-ки классовое самосознание отличается от 4-ки.

PHP: 5.2.1

ну вот потому и глюки…

ну вот потому и глюки...

в смысле? а написать как-нибудь универсально для всех версий php нельзя что ли? работает же и сам wordpress и куча плагинов к нему.

я не расчитывал на пхп5…… у меня в хостере и в локалке все еше доверенная пхп 4…… в будущем исправим…. я несколько вещей поправлю и опять дам на скачку….

Возникла проблема со страницами (page) вида /*.html. После опубликования страницы при переходе по адресу вида /*.html выдаётся ошибка 404. При этом с записями (post) всё нормально.

На что обратил внимание.
При создании новой записи после заполнения поля заголовка немедленно создаётся постоянная ссылка в соответствии с настойками ЧПУ, которую можно видеть в районе поля заголовка и можно редактировать.
При создании новой страницы постоянная ссылка создаётся только после опубликования страницы.

Возможно, плагин page_htm это не учитывает, что порождает проблему.
Оговорюсь. Проблема плавающая. Иногда она устранялась после пересохранения настроек ЧПУ.
Недавно пришлось временно перейти к настройкам ЧПУ по умолчанию, и вернуться опять к ссылкам вида /*.html не удаётся.

Наверно, за полтора года что-то в движке изменилось 🙂

Честно говоря, всё, что хотелось бы, это узнать, как заставить WP при создании заголовка страницы сразу создавать постоянную ссылку на страницу. Т.е. чтобы WP поступал также, как и при создании заголовка новой записи. Я смотрю файлы wp-admin/page-new.php и wp-admin/post-new.php и не нахожу, что переделать нужно.

Возник вопрос, а почему HTM а не HTML ?

Уважаемое сообщество создавшее сей приятный плугин, помогите плизз.

Ситуация такова, поставил я всёже форум Simple Press форум – Версия 4.2.2 и всё бы хорошо но при включении вашего плугина возникают глюки урлов форума типа "http://tlthram.ru/forum.htm/kurilka/" как это побороть я не знаю. Помогите плизз понять суть возникающей неурядици и побороть её.

Неужто никто не знает как помочь в создавшейся ситуации.

Сам мучаюсь такой же проблемой. Однако я выяснил опытным путем, что Simple Press автоматом цепляет пемалинк страницы, а использует потом для формирований путей форума ярлык этой страницы. Т.к. WP странице к ярлыку цепляет еще расширение .php, выходит ошибка. На странице форума выводит адреса ссылок …./forum.php/…. Если вручную в строке браузера в адресе прибить .php, чтобы осталось …./forum/…. то по ссылке заходит, и там все нормально, но далее по сгенерированным форумом ссылкам надо также вручную перемещаться.

Вывод: необходимо сделать так, чтобы у используемой для вывода форума страницы слуг совпадал с пемалинком. У меня на другом проекте все прекрасно работает, но там все страницы выводятся вобще без расширения, следовательно оба значения совпадают. Я пытался понять, в чем разница между двумя проектами и не понял, наборы плагинов одни и те же, версии одни и те же. Может какие куски кода я когда-то куда-то вручную занес, и сейчас разное отображение.

Если есть возможность у людей с прямыми ручками, может напишете плагинчик, в котором для страниц просто убиралось бы разрешение? Плагин, описанный в топике на WP 3.01 не желает вставать, выдает ошибку. Хотя я файл плагина взял с какого-то постороннего ресурса и не знаю, какая версия. Если есть свежая версия, поделитесь.

Anonymous
Отправить
Ответ на: