Символічні посилання на поле для розробників із плагінами та таблицями стилів


11

Я використовую mac os x 10.6 з xampp.

http://wp3.1/ це URL-адреса, де я встановив WordPress.

Фізичний шлях є /Users/myUserName/Sites/wp3.1/

Я не встановлюю плагіни чи теми "природним" способом. Я створив каталог з назвою "git", який знаходиться в /Users/myUserName/git/. Тут живуть усі мої сховища git. Коли я хочу встановити плагін, я просто створюю символічне посилання в /Users/myUserName/Sites/wp3.1/wp-content/plugins/. Це чудово підходить для простих плагінів, але якщо плагін зазначає таблицю стилів або сценарій, URL відображається як:

http://wp3.1/wp-content/plugins/Users/myUserName/git/options-framework-plugin/css/colorpicker.css?ver=3.1.1

Як це виправити?

Відповіді:


10

Символічні посилання є… ризикованими для WordPress. Простіше використовувати окремий домен для плагінів на wp-config.php:

define( 'WP_PLUGIN_DIR', '/local/path/to/plugin/directory' );
define( 'WP_PLUGIN_URL', 'http://plugins.dev');

Див. Стратегія створення плагінів із використанням Eclipse як приклад конфігурації IDE з такою установкою.


Цікаво ... Дякую! Зробимо спробувати це відразу.
mfields

Це спрацювало сподобалось чарівність. Дуже дякую! Мені знадобилося певний час, щоб мої пристрасті були налаштовані, але зараз усе працює на відмінно. Божевільний реквізит !!!
mfields

@toscho: Чи не використовуватимуть окремий домен для своїх плагінів, створювати проблеми із міждоменною безпекою у веб-переглядачах? WP файли cookie, які не передаються, коли ви отримуєте доступ до чогось у ` plugins.dev/myplugin/myaction.php '?
Ян Фабрі

1
@Jan Fabry Я використовую цей метод лише для розробки. IMO, плагіни, кодовані для доступу до своїх файлів, роблять це неправильно. Такі дії, як це, слід обробляти адміністратором-ajax.php.
mfields

1
+1 Це можливо як для плагінів, так і для MU-плагінів, але, на жаль, не для крапель, яким доведеться залишитися у вашому реєстрі ~/wp-content...
kaiser

0

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

Наступний код повинен бути встановлений як плагін з обов'язковим використанням :

add_filter( 'plugins_url', function( $url ) {
    return str_replace( '/Users/myUserName/git/', '', $url );
});
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.