Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » В помощь вебмастеру » WordPress

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101

Открыть новую тему     Написать ответ в эту тему

TheBat



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
WordPress
система публикаций



Последнее крупное обновление: 6.4 Shirley 07.11.2023
Последняя версия: 6.4.3 30.01.2024    
Последний RC: 6.5 Release Candidate 2 12.03.2024    
Последняя бета-версия: 6.5 Beta 3 27.02.2024

 
Документация WordPress:
Актуальная аглоязычная документация.
Документация на русском.
 
Бесплатные дополнения к WP:
Темы. Взятые с других источников могут быть небезопасные
Плагины. Взятые с других источников могут быть небезопасные
 
Русские форумы:
Официальный русский форум
Раздел по WP на киберфоруме.
 
Блоги о WP - описание, русифицированные версии популярных плагинов:
lecactus устарело
sonika устарело
Блог Ю.Б.  
wpuse.ru  
wp-kama.ru - на сайте есть вольный перевод из кодекса функций ВП.


обзор "Помощи вебмастеру" » все скрипты » новостные скрипты/скрипты блогов » WordPress

Всего записей: 802 | Зарегистр. 17-12-2002 | Отправлено: 18:16 02-05-2005 | Исправлено: fakintosh, 22:19 12-03-2024
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
fakintosh

Цитата:
А как и что и где исправлять?

 
 

Цитата:
что тут и строкой выше  
 
Цитата:
wp-admin/admin-footer.php on line 87
?



----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 20:08 01-04-2014
Drean



БКЗ-210-140Ф
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Может ли кто помочь с плагином CM Answers.
 
На данный момент при создании вопроса получается такая ссылка:
http://sitename.com/answers/d0-bd-d0-b5-d1-81-d0-ba-d0-be-d0-bb-d1-8c-d0-ba-d0-be-d0-b2-d0-be-d0-bf-d1-80-d0-be-d1-81-d0-be-d0-b2-d0-be-d0-bd-d0-be-d1-80-d0-bc-d0-b0-d1-82-d0-b8-d0-b2-d0-b5-d0-bd-d0-b0-d0-be-d1-82-d0-be/
 
А должна быть такая
http://sitename.com/answers/neskolko-voprosov-o-normative-na-otoplenie/
 
где копать или что можно изменить?

Всего записей: 1993 | Зарегистр. 13-05-2003 | Отправлено: 20:12 01-04-2014 | Исправлено: Drean, 20:13 01-04-2014
fakintosh



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cheery
 
Это то понятно
 
Но в какие файлы лезть и что исправлять то?
 
Кстати на всяких разных хостингах у меня эта байда появлялась через какое то время. И даже на чистом инстале на соседнем субдомене О_0

----------
Нащяльника, мая сервира паставиль, фрибизьдя инсталя сделаль, апачи сабраль, пыхапе патключиль, сапускаю, а ано - ажамбех пашамбе эшельбе шайтанама!

Всего записей: 2156 | Зарегистр. 02-01-2009 | Отправлено: 20:12 01-04-2014 | Исправлено: fakintosh, 20:13 01-04-2014
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
fakintosh

Цитата:
Это то понятно  
 
Но в какие файлы лезть и что исправлять то?  

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

Цитата:
где копать или что можно изменить?

ну надо смотреть что генерит ссылки. очевидно, в данном случае, что текст используемый для ссылки - в уникоде.
и код "санитарии" приводит его к такому виду. нужно найти что преобразует ссылки и выяснить причину.
 
если используется стандартный get_permalink, то нужно глянуть как записывается post_name в базу

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 20:16 01-04-2014 | Исправлено: Cheery, 20:43 01-04-2014
fakintosh



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cheery
 
 

Цитата:
что тут и строкой выше  
 
Цитата:
wp-admin/admin-footer.php on line 87  

 
Доступ дам когда перееду на VPS который с февраля жду, сейчас просто на временном хостинге сижу на котором стоит webmin и на этом webmin тупо ничего непонимаю как и что. Из за этого у себя и новые посты с 6.02 не пишу. А пока сейчас там смысла что то делать нету. Думаю в течении этого месяца будет у меня VPS с isp manager и тогда займусь блогом.

----------
Нащяльника, мая сервира паставиль, фрибизьдя инсталя сделаль, апачи сабраль, пыхапе патключиль, сапускаю, а ано - ажамбех пашамбе эшельбе шайтанама!

Всего записей: 2156 | Зарегистр. 02-01-2009 | Отправлено: 20:24 01-04-2014
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
fakintosh

Цитата:
сейчас просто на временном хостинге сижу на котором стоит webmin и на этом webmin тупо ничего непонимаю как и что.

мне достаточно ssh доступа.
нужно посмотреть содержимое того файла - может когда то сайт был взломан и туда внедрили какую то гадость.

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 20:26 01-04-2014
fakintosh



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cheery
 
ssh будет на VPS, хоть он и есть в админке но не факт что работает

----------
Нащяльника, мая сервира паставиль, фрибизьдя инсталя сделаль, апачи сабраль, пыхапе патключиль, сапускаю, а ано - ажамбех пашамбе эшельбе шайтанама!

Всего записей: 2156 | Зарегистр. 02-01-2009 | Отправлено: 20:28 01-04-2014 | Исправлено: fakintosh, 20:30 01-04-2014
Drean



БКЗ-210-140Ф
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cheery
Может ли быть собака зарыта в этом тексте кода:
 

Цитата:
 <ul class="controls">
                            <?php if( $thread->canEditAnswer($answer['id']) ): ?>
                                <li><a href="<?php echo get_permalink($post->ID);
                                ?>?<?php echo CMA_AnswerController::PARAM_EDIT_ANSWER_ID; ?>=<?php echo $answer['id'];
                                ?>&backlink=<?php echo esc_attr(base64_encode($_SERVER['REQUEST_URI']));
                                ?>" class="edit"><?php echo CMA::__('Edit'); ?></a></li>
                                   <?php endif; ?>
                        </ul>


Цитата:
 
            <ul class="controls">
                <?php if( $thread->canEditQuestion() ): ?>
                    <li><a href="<?php echo get_permalink($post->ID);
                    ?>?<?php echo CMA_AnswerController::PARAM_EDIT_QUESTION_ID; ?>=<?php echo $thread->getId();
                    ?>&backlink=<?php echo esc_attr(base64_encode($_SERVER['REQUEST_URI']));
                    ?>" class="edit"><?php echo CMA::__('Edit'); ?></a></li>
                       <?php endif; ?>
            </ul>
 

Всего записей: 1993 | Зарегистр. 13-05-2003 | Отправлено: 21:44 01-04-2014 | Исправлено: Drean, 21:46 01-04-2014
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Drean

Цитата:
get_permalink

 
это из WP API, формирует ссылку на основании данных, что записаны в базе для поста.
но второй кусок - это же из админки, для редактирования.
как и первый - слово Edit об этом говорит, то есть не ту часть шаблона смотрите.
 
ps: может это? я же не знаю, о какой ссылке вы говорите - в код страницы гляньте, какие элементы есть вокруг.

Цитата:
    <li class="home"><a href="<?php echo $listUrl; ?>"><?php _e('Questions', 'cm-answers'); ?></a></li>

 
либо тут  

Цитата:
            <td class="cma-thread-summary">
                <div class="cma-thread-title">
                    <a href="<?php echo get_permalink($thread->getId()); ?>"><?php echo $thread->getTitle(); ?></a>
                </div>


----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 22:07 01-04-2014 | Исправлено: Cheery, 22:32 01-04-2014
Drean



БКЗ-210-140Ф
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Я искал по слову "post_name" в файлах плагина, но там ничего интересного не нашел, потом искал в тексте  get_permalink.  
 
Помогите пожалуйста разобраться с этим. Я уже совсем потерял надежду. Залил плагин сюда.  
 
http://rghost.ru/53695772
 
В общих настройках WP у меня стоит ЧПУ, т.е. я так понимаю проблема в кодировке плагина.  
 
Вот еще нашел такой код в файле my-questions.phtml:
 

Цитата:
            <?php if( !CMA_AnswerThread::isQuestionAutoApproved() ): ?>
                <td class="cma-thread-meta">
                    <?php echo $thread->getStatus(); ?>
                </td><?php endif; ?>
            <td class="cma-thread-summary">
                <div class="cma-thread-title">
                    <a href="<?php echo get_permalink($thread->getId()); ?>"><?php echo $thread->getTitle(); ?></a>
                </div>
                <div class="cma-thread-updated"><?php printf(__('updated %s by %s', 'cm-answers'), CMA_AnswerThread::renderDaysAgo($thread->getUnixUpdated()), $thread->getLastPosterName()); ?>
                </div>

 
И в файле \lib\models\PostType.php
 

Цитата:
 /**
     * Set the title of the post and save
     *
     * @param string $title
     * @return void
     */
    public function setTitle($title) {
        $this->post->post_title = $title;
        $this->post->post_name = sanitize_title_with_dashes($title);
        $this->savePost();
    }
    public function getTitle() {
        return $this->post->post_title;
    }

 
И в файле \lib\models\AnswerThread.php
 

Цитата:
   $id = wp_insert_post(array(
 
            'post_status'  => $status,
 
            'post_type'    => self::POST_TYPE,
 
            'post_title'   => $title,
 
            'post_content' => $content,
 
            'post_name'    => sanitize_title_with_dashes($title),
 
            'post_author'  => get_current_user_id(),
 
        ));

Всего записей: 1993 | Зарегистр. 13-05-2003 | Отправлено: 22:33 01-04-2014 | Исправлено: Drean, 22:48 01-04-2014
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Drean

Цитата:
Залил плагин сюда.  

он без проблем качается и с сайта плагинов.
 
я написал выше - посмотрите html код вокруг ссылки, чтобы найти где именно он в плагине генерится.
 

Цитата:
И в файле \lib\models\AnswerThread.php  

ну значит проблемы возникают в
Цитата:
sanitize_title_with_dashes

сейчас гляну что там.
 
эм.. проблема, как я понимаю, в том, что там нет транслита.  
ваш тайтл на русском, код честно пытается преобразовать его в слаг с ASCII кодом (как положено по RFC), ну и вот такое получается.
 
я не пользуюсь WP для русскоязычного сайта, надо посмотреть как можно преобразовать $title сначала в транслит, а потом уже применять данную функцию.
 
вот такое стоит? может поможет
http://wordpress.org/plugins/rustolat/
http://wordpress.org/plugins/cyr2lat/
правда давно не обновлялось..
 
либо попробуйте заменить данную функцию в плагине на  
https://codex.wordpress.org/Function_Reference/sanitize_title

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 22:34 01-04-2014 | Исправлено: Cheery, 23:12 01-04-2014
Xrobak

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Drean  
У меня с http://www.laset.info/wordpress/ukr-to-lat.html корректно УРЛы делает (только что проверил твой плагин), по идее с один из плагинов выше, что указал Cheery, тоже будет работать.

Всего записей: 939 | Зарегистр. 16-08-2004 | Отправлено: 00:24 02-04-2014
Drean



БКЗ-210-140Ф
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Установил rustolat, до этого у меня стоял Cyr-To-Lat, но при создании вопроса URL в латиницу так и не трансформировался. Может нужно что-то выставить где-нибудь или перезапустить, пересохранить?

Всего записей: 1993 | Зарегистр. 13-05-2003 | Отправлено: 09:03 02-04-2014 | Исправлено: Drean, 09:04 02-04-2014
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Drean

Цитата:
Может нужно что-то выставить где-нибудь или перезапустить, пересохранить?

переписать функцию (вместо sanitize_title_with_dashes использовать sanitize_title), как указал.
 
в кодексе сказано

Цитата:
Further filtering can be added via the plugin API by hooking the sanitize_title filter.

то есть данная функция работает с API хуками, которые предоставляют сторонние плагины.
 
и именно этот хук использует плагин cyr2lat
 

Цитата:
    add_filter('sanitize_title', 'ctl_sanitize_title', 9);

так как приоритет выше, чем у стандартной функции, то данный фильтр вызывается до нее, преобразует русский в транслит, который уже затем, стандартной функцией, санируется.

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 09:08 02-04-2014 | Исправлено: Cheery, 09:11 02-04-2014
Drean



БКЗ-210-140Ф
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Заменил функцию в двух местах и теперь получил ошибку в шапке сайта:
 
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/host/public_html/sitename/wp-content/plugins/cm-answers/lib/models/AnswerThread.php:1785) in /home/host/public_html/sitename/wp-content/plugins/cm-answers/lib/controllers/BaseController.php on line 37
 
При создании вопроса плюсом добавляется такая ошибка с отключением перенаправления.  
 
Warning: Cannot modify header information - headers already sent by (output started at /home/host/public_html/sitename/wp-content/plugins/cm-answers/lib/models/AnswerThread.php:1785) in /home/host/public_html/sitename/wp-includes/pluggable.php on line 875
 

Всего записей: 1993 | Зарегистр. 13-05-2003 | Отправлено: 09:31 02-04-2014 | Исправлено: Drean, 09:37 02-04-2014
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Drean

Цитата:
Заменил функцию в двух местах и теперь получил ошибку в шапке сайта:

сейчас, не обратил внимание, что эта функция уже выводит тайтл, а не возвращает его
 
хотя

Цитата:
Return Values
(string)  
The sanitized string.

возвращает. значит либо новый плагин глючит (верните старый), либо с ошибкой заменили.
 
покажите как переписали те строки.
точнее
Цитата:
AnswerThread.php:1785


----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 09:36 02-04-2014 | Исправлено: Cheery, 09:40 02-04-2014
Drean



БКЗ-210-140Ф
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cheery
 
 
Заменил вот так
 
В AnswerThread.php
 

Цитата:
        $id = wp_insert_post(array(
 
            'post_status'  => $status,
 
            'post_type'    => self::POST_TYPE,
 
            'post_title'   => $title,
 
            'post_content' => $content,
 
            'post_name'    => sanitize_title($title),
 
            'post_author'  => get_current_user_id(),
 
        ));

 
 
в PostType.php
 

Цитата:
    /**
     * Set the title of the post and save
     *
     * @param string $title
     * @return void
     */
    public function setTitle($title) {
        $this->post->post_title = $title;
        $this->post->post_name = sanitize_title($title);
        $this->savePost();
    }
    public function getTitle() {
        return $this->post->post_title;
    }

 
 
Последняя строка в AnswerThread.php 1783  
 

Цитата:
?>

Всего записей: 1993 | Зарегистр. 13-05-2003 | Отправлено: 09:39 02-04-2014 | Исправлено: Drean, 09:42 02-04-2014
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Drean
верните
Цитата:
до этого у меня стоял Cyr-To-Lat,

видимо другой глючит и что то выводит, хотя не должен
 
кстати, в том плагине, что скачивается с сайта, нет строки 1785
 
сейчас гляну тот, что вы выкладывали ранее
 

Цитата:
Последняя строка в AnswerThread.php 1783  

ну так вы после нее пробел или перенос строки вставили.. удалите вообще ?>
в этом и есть проблема.

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 09:43 02-04-2014 | Исправлено: Cheery, 09:44 02-04-2014
Se_Vlad



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Установил rustolat, до этого у меня стоял Cyr-To-Lat,  

А в репо не судьба зайти и увидеть что оба плага давно устарели и им есть современная замена?

Всего записей: 484 | Зарегистр. 09-08-2004 | Отправлено: 12:54 02-04-2014 | Исправлено: Se_Vlad, 12:55 02-04-2014
Drean



БКЗ-210-140Ф
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Удалил в двух файлах _with_dashes и все заработало! Всем спасибо. Особая благодарность Cheery.
 
P.S. при этом установил Cyr to Lat enhanced, все остальные деактивировал.

Всего записей: 1993 | Зарегистр. 13-05-2003 | Отправлено: 13:32 02-04-2014
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101

Компьютерный форум Ru.Board » Интернет » В помощь вебмастеру » WordPress


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru