Проблема с гидами и абсолютными ссылками

8

Руководства по публикациям и страницам включают полный абсолютный URL моего сайта (например, http://www.example.com/wordpress/?p=1 ). Это вызывает проблему, если изменяется домен или путь WordPress, или если я просматриваю сайт по его IP-адресу, а не по домену и т. Д.

Проблема 1: на моем сайте есть несколько внутренних ссылок, которые используют guid. Я предполагаю, что это неправильно, и я должен переписать код шаблона, чтобы удалить ссылки на guid - правильно?

Проблема 2: изображения вставляются в сообщение, используя их абсолютный URL, а не относительный. Это кажется недальновидным, но мне интересно, есть ли разумная причина для этого. Есть ли способ изменить это поведение?

Бобби Джек
источник

Ответы:

7

1) GUID это именно то, что GUID. Он используется для уникальной идентификации поста. Если вам нужно добавить ссылку на сообщение, используйте get_permalink( $post_ID )( $post_IDнеобязательно) (ссылка: get_permalink ).

2) Не без плагина, нет. Там говорят об использовании шорткода изображения для 3.1, хотя, или, возможно, 3.2.

А пока вы можете попробовать использовать альфа-версию моего плагина Regenerate Thumbnails:

http://viper007bond.pastebin.com/XprbYtg2

Он пройдет через все ваши сообщения и обновит все теги изображений.

Убедитесь, что вы сначала сделали резервную копию своей базы данных. Код является альфа-версией и не гарантированно работает, хотя я немного его протестировал.

Viper007Bond
источник
1) Да, именно это я и делаю (сейчас). 2) Я проверю ваш плагин - спасибо. Одна проблема связана с расположением каталога загрузки и его поведением, если оно изменилось - мне нужно прочитать об этом и понять это!
Бобби Джек,
1

Проблема 1: Да, вы не должны использовать guid в коде шаблона. Смотрите эту недавнюю ветку из списка рассылки wp-hackers:

http://lists.automattic.com/pipermail/wp-hackers/2010-September/034559.html

Проблема 2: Этот вопрос на самом деле является одним из наиболее обсуждаемых. :)

http://lists.automattic.com/pipermail/wp-hackers/2010-September/034652.html

http://core.trac.wordpress.org/ticket/11394

sorich87
источник
1

1.) GUID в WordPress в первую очередь существуют для читателей RSS. Предполагается, что они являются уникальными идентификаторами, поэтому RSS-каналы не публикуют один и тот же контент снова и снова. Они не предназначены для использования в постах или страницах WordPress. Даже если они выглядят как постоянные ссылки, их не следует и никогда не следует путать с ними.

По этой причине, часть URL GUID никогда не должна изменяться. Если вы меняете домены, GUID не должен обновляться. Фиды вышли из старого домена, а не из нового, поэтому изменение URI в базе данных будет просто раздражать ваших читателей, которые увидят, что старый контент снова и снова всплывает.

2.) Изображения можно сделать корневыми относительно редактирования путем редактирования пути при их вставке. Если вам нужно изменить старые изображения, создайте резервную копию базы данных и воспользуйтесь плагином Search Regex. Поиск в контенте для scr должен показывать все изображения, используемые в вашем контенте.

Для обеспечения максимальной производительности в кросс-браузерном случае целесообразно установить base href в файле .htaccess в корневой каталог сайта, если вы используете относительные ссылки.

Elpie
источник
0

Проблема с WordID GUID заключается в том, что они выглядят так же, как URL-адреса - поэтому некоторые умные ослы решили использовать их для URL-адреса - лучше указывать случайные числа или что-то подобное ...

rtiz
источник
1
Я бы сказал, что это сбивает с толку, но вряд ли проблема. URL-адреса имеют смысл в качестве простого и относительно надежного уникального идентификатора, и нередки случаи, когда они используются как таковые.
Rarst