dreamwinner сказал(а)
Нельзя, если изменения достаточно серьёзные.
т.е. вы каждый раз предлагаете делать изменения клиенту? Может core разработчикам сообщить - они поправят в релизе? или отмалчиваться будете чтоб потом вылить на них всё это как тут?
dreamwinner сказал(а)
Вы привели в пример совсем другой случай.
а.. неудобный вам. Ясно.
вы меня извините, но вы можете на мой вопрос ответить?
ок, я развернул в системе Windows локальный мультисайт, распечатал внутри
print_r( rcl_addon_path( __FILE__ ) );
получил
D:/xampp/htdocs/rcl.ru/wp-content/wp-recall/add-on/user-login-notice/
уважаемый dreamwinner расскажите подробнее, что в данном случае я делаю неверно?
Андрей CS сказал(а)
ок, я развернул в системе Windows локальный мультисайт, распечатал внутри
print_r( rcl_addon_path( __FILE__ ) );
получил
D:/xampp/htdocs/rcl.ru/wp-content/wp-recall/add-on/user-login-notice/
уважаемый dreamwinner расскажите подробнее, что в данном случае я делаю неверно?
Делаю в файле /wp-content/wp-recall/add-on/user-login-notice/index.php (свой фикс, исправляющий баг, убрал в сторону)
print_r(rcl_addon_path(__FILE__));
die;
ЧИСТАЯ БЕЛАЯ СТРАНИЦА!!!!
Делаю
echo (var_export(rcl_addon_path(__FILE__), true));
die;
Результат: false !!!!!!!!!!!!!!!
Андрей CS сказал(а)
ок, я развернул в системе Windows локальный мультисайт, распечатал внутри
print_r( rcl_addon_path( __FILE__ ) );
получил
D:/xampp/htdocs/rcl.ru/wp-content/wp-recall/add-on/user-login-notice/
уважаемый dreamwinner расскажите подробнее, что в данном случае я делаю неверно?
Прописываю в файле /wp-content/plugins/wp-recall/functions/addons.php
if(!$addonPath) {
$the_paths = array(RCL_PATH . "add-on", RCL_TAKEPATH . "add-on") ;
$target_path = $path;
foreach($the_paths as $i => $the_path) {
$the_paths[$i] = $the_path = wp_normalize_path($the_path);
if(false !== strpos( $target_path, $the_path )) {
$str = str_replace( $the_path, "", $target_path);
$parts = explode("/", ltrim($str, "/"));
$addonPath = $the_path . "/" . $parts[0];
}
}
};
if(!$addonPath) return false;
вместо
if(!$addonPath) return false;
Делаю в файле /wp-content/wp-recall/add-on/user-login-notice/index.php
echo (var_export(rcl_addon_path(__FILE__), true));
die;
Получаю:
'E:/OpenServer/domains/sample.ru/wp-content/wp-recall/add-on/user-login-notice/'
Что и требовалось доказать
Андрей CS сказал(а)
ну вот я распечатал функцию сразу после объявления констант в файле index.php вашего дополнения и получаю полный путь
все верно?
Да, верно.
'1.0.4',
'DOMAIN' => 'profile-login-notice',
'ADMIN' => is_admin(),
'PATH' => wp_normalize_path(rcl_addon_path(__FILE__)),
'URL' => rcl_addon_url('', __FILE__ ),
'LOCAL' => (false !== strpos($_SERVER['DOCUMENT_ROOT'], '/OpenServer/domains/')),
'AJAX' => defined('DOING_AJAX') && DOING_AJAX,
) as $name => $value) {
defined(__NAMESPACE__ . "\$name") or define(__NAMESPACE__ . "\$name", $value);
};
echo (var_export(rcl_addon_path(__FILE__), true));
die;
С фиксом даёт правильный результат 'E:/OpenServer/domains/sample.ru/wp-content/wp-recall/add-on/user-login-notice/'
Без фикса: false
Владимир (Otshelnik-Fm) сказал(а)
dreamwinner сказал(а)
E:/OpenServer/ну... снова сборка с проблемами с путями под винду. Только это проблема опенсервера и денвера и похожих сборок. Сконфигурировать ПО серверное правильно никак?
Понятно. Нельзя советовать пользователю объявить глобальную $wpdb;
А вот заставить его ломать голову при установке "правильного" ПО - можно.
Дописать пару строк в функцию rcl_addon_path - тоже никак нельзя...
Похоже, людям, использующим OpenServer, надо костылять отсюда с "душком"...
😁😁😁😁
Серьёзные дяди заняты серьёзными делами.
Вот эти строки нужно дописать, чтобы у людей с "неправильным" ПО не возникало проблем.
if(!$addonPath) {
$the_paths = array(RCL_PATH . "add-on", RCL_TAKEPATH . "add-on") ;
$target_path = $path;
foreach($the_paths as $i => $the_path) {
$the_paths[$i] = $the_path = wp_normalize_path($the_path);
if(false !== strpos( $target_path, $the_path )) {
$str = str_replace( $the_path, "", $target_path);
$parts = explode("/", ltrim($str, "/"));
$addonPath = $the_path . "/" . $parts[0];
}
}
};
if(!$addonPath) return false;
Но, наверное, это очень сложно.
тысячи людей и летучих мышей едят. Но мы же не говорим что это правильно.
dreamwinner сказал(а)
Нельзя советовать пользователю объявить глобальную $wpdb;
пользователю? Да, ему нельзя советовать править ядро. Если есть проблема в ядре - надо об этом сообщить core разработчикам, а пользователю сказать или "жди обновления" или "вот эта версия работает верно и там исправлено".
Уважаемый dreamwinner, я полагаю вам следует как то успокоиться.
Речь была о вашем желании поковыряться в ядре Wordpress и принуждении к этому пользователя, а вы как то плавно съезжаете с темы.
Вы конечно можете искать ошибки в моем плагине и я даже скажу вам свое спасибо, если что то найдете, тестеры нам всегда нужны, но речь то не об этом.
Андрей CS сказал(а)
Уважаемый dreamwinner, я полагаю вам следует как то успокоиться.
Речь была о вашем желании поковыряться в ядре Wordpress и принуждении к этому пользователя, а вы как то плавно съезжаете с темы.
Вы конечно можете искать ошибки в моем плагине и я даже скажу вам свое спасибо, если что то найдете, тестеры нам всегда нужны, но речь то не об этом.
Похоже, что Вам не нужны люди, которые могут найти ошибки в вашей работе.
Вот это я сейчас увидел отчётливо.
Владимир (Otshelnik-Fm) сказал(а)
тысячи людей и летучих мышей едят. Но мы же не говорим что это правильно.dreamwinner сказал(а)
Нельзя советовать пользователю объявить глобальную $wpdb;пользователю? Да, ему нельзя советовать править ядро. Если есть проблема в ядре - надо об этом сообщить core разработчикам, а пользователю сказать или "жди обновления" или "вот эта версия работает верно и там исправлено".
Владимир, читайте выше в теме:
Я посоветовал пользователю не обновляться при выпуске минорных версий.
Ковыряться в ядре - согласен. Этот совет был неверным.
Андрей CS сказал(а)
Уважаемый dreamwinner, я полагаю вам следует как то успокоиться.
Речь была о вашем желании поковыряться в ядре Wordpress и принуждении к этому пользователя, а вы как то плавно съезжаете с темы.
Вы конечно можете искать ошибки в моем плагине и я даже скажу вам свое спасибо, если что то найдете, тестеры нам всегда нужны, но речь то не об этом.
Всего лишь несколько дописанных строк принесут больше пользы и избавят от подобных дискуссий.
if(!$addonPath) {
$the_paths = array(RCL_PATH . "add-on", RCL_TAKEPATH . "add-on") ;
$target_path = $path;
foreach($the_paths as $i => $the_path) {
$the_paths[$i] = $the_path = wp_normalize_path($the_path);
if(false !== strpos( $target_path, $the_path )) {
$str = str_replace( $the_path, "", $target_path);
$parts = explode("/", ltrim($str, "/"));
$addonPath = $the_path . "/" . $parts[0];
}
}
};
if(!$addonPath) return false;
Прочтите код внимательно. Там нет никакой ереси!!!!
if(!$addonPath) { /* Проверим ещё раз пути, не кривая ли сборка PHP */}
/* И только потом вернём false */
if(!$addonPath) return false;
Это, по вашему - ересь????
🤔
Владимир (Otshelnik-Fm) сказал(а)
тысячи людей и летучих мышей едят. Но мы же не говорим что это правильно.
Думаю, что люди из европы, поедающие лягушек, вызывают у Вас гораздо больше уважения...😁😁😁
Просто потому что они из европы...
А также жители Сардинии, поедающие гнилой сыр с личинками мух...
😁😁😁
Андрей CS сказал(а)
dreamwinner сказал(а)
Похоже, что Вам не нужны люди, которые могут найти ошибки в вашей работе.Почему же? я же сообщил, что тестировщики нам всегда нужны, новая версия на носу, ваша квалификация вполне позволяет.
А вот Владимир не считает что моей квалификации достаточно, чтобы ковыряться в носу... 😁😁😁
"Плохо, очень плохо dreamwinner то что вы написали в этой ветке. Это костыляние и подход с "душком" к разработке."
Андрей CS сказал(а)
dreamwinner сказал(а)
Похоже, что Вам не нужны люди, которые могут найти ошибки в вашей работе.Почему же? я же сообщил, что тестировщики нам всегда нужны, новая версия на носу, ваша квалификация вполне позволяет.
Давайте, я тогда до кучи обрисую Вам ещё одну Вашу ошибку до кучи.. 🤫
На этот раз в JavaScript..
dreamwinner сказал(а)
Я посоветовал пользователю не обновляться при выпуске минорных версий.
но вы и там допустили ошибку:
не торопитесь обновлять ядро WordPress до самой крайней минорной версии.
Дождитесь выпуска WordPress v5.6 (не 5.5.2, не 5.5.3, и т.д.) а ровно 5.6
чем отличается 5.4. от 5.5? и 5.5. от 5.6? Почему вы советуете ждать 5.6?
5.5. такая же мажорная версия как и 5.6 и такая же как и версия 5.0. Удивлены?
А вы знаете разницу между версиями? Например между 4.9. и 5.0.? это не следующая большая версия. Это просто значит что после девятки цифр больше нет и вордпресс вынужден делать переход на 4.0, на 5.0. И также он перейдет на 6.0. после 5.9.
«мажорные релизы» (major) - основные версии, например: 3.9 > 4.0 > 4.1 > 4.2. В этих версиях добавляется новый функционал.
- цитата отсюда
И версия 5.5. - да торопиться не нужно. Но 5.5.1. или 5.5.2 стабильней - т.к. там исправлены баги и это по сути патчи.
Что будет стабильней 5.5.8 или 5.6?
- Ваш совет как бы говорит что 5.6. А он не будет стабильным. Стабильным будет 5.6.1 или даже 5.6.2 точно. Уж очень редкие баги и специфические останутся не решенными.
Ваш совет ждать 5.6 - ошибочен. - там будет также как и с 5.5. Тогда уж советуйте ждать 5.6.1 - именно такие советы дают волонтеры вордпресс.