Artem Frolov
Ответы в темах
-
Редактировать, удалять посты, публиковать (в том числе после редактирования) посты — это отдельные возможности ролей. Их можно независимо друг от друга включать и выключать для определенной роли. Если не подходят стандартные роли со стандартными наборами возможности — создайте новую и установите только нужные разрешения.
Публиковать он не сможет. Только автор или администратор после проверки.
Роль можно нестандартную сделать если понадобится.
Вы можете управлять ролями пользователей и возможностями этих ролей.
Назначьте ему роль «Contributor» и лишите его возможности удалять статьи.
Так он сможет только редактировать, а публиковать будете вы после проверки.
Ищите в этом направлении, есть много плагинов для работы с ролями и возможностями пользователей.
Форум: Проблемы и решения
Тема: Ссылка на источник через custom fieldНе за что по факту 😀 Спасибо Сергею!
Удачи с вашим проектом!
[SOLVED]
Форум: Проблемы и решения
Тема: Ссылка на источник через custom fieldСергей, спасибо большое за комментарии, буду работать с документацией.
@vabzz простите, что желание помочь превратилось в медвежью услугу для вас. Позвольте реабелитироваться перед вами:
<?php if( get_post_meta( $post->ID, 'avtor', true) ) echo '<a href="' . esc_url( get_post_meta( $post->ID, 'avtor', true) ) . '">Источник</a>'; ?>
Может быть где-то в другом месте у вас ошибка. У вас в предупреждении указана строка где-то в районе этого кода? Может выше ошибку поискать?
кстати использовать фигурные скобки в конструкции if в вашем случае не обязательно http://codex.wordpress.org/WordPress_Coding_Standards#Brace_Style
<?php global $options; foreach ($options as $value) { if ( get_option( $value['id'] ) === FALSE) $$value['id'] = $value['std']; else $$value['id'] = get_option( $value['id'] ); } ?>
Форум: Проблемы и решения
Тема: ИзображенияДа-да. А вот откатываться на поздние версии WP — очень не правильные рекомендации. Наоборот — переходить на новую версию нужно обязательно, но только если вы уверены, что все установленные плагины, дополнения кода (моды) и тема — поддерживают новую версию. Если какой-то плагин не подготовлен к новой версии WP спустя пару недель после релиза — за борт его!
Форум: Проблемы и решения
Тема: Выскакивает ошибкаЭто может быть много чего — от невалидного плагина до забытой пустой строки в конце файла после
?>
Порядок поведения в таких ситуациях прост:
1) Деактивируйте плагины — если ошибка исчезнет, значит включайте все плагины по одному — так вы найдете плохой плагин или выявите конфликт с темой.
2) Если при отключенных плагинах ничего не изменилось — попробуйте переключить тему на стандартную.
3)Если ошибка все равно остается — вспомните о всех ваших ручных изменениях в ядре WP (которых быть не должно в принципе, но вдруг…).
Итак попробуйте все это проделать и выявить причину. Иначе нам будет трудно вам помочь.
Это может быть вызвано ошибками JavaScript на странице. Вы можете предоставить url? Если нет, то во всех порядочных браузерах есть инструменты разработчика — вызовите их и проверьте код на наличие ошибок JS.
Удачи!
Скажите пожалуйста, какую тему вы используете (ссылку если можно)? И где конкретно нужно убрать: в ленте записей или на странице самой записи?
Форум: Проблемы и решения
Тема: Ссылка на источник через custom fieldПривет,
вот как можно сделать ссылку кликабельной:1) нужно добавить условие: если данные в поле существуют — выводить ссылку, если нет — ничего не выводить:
2) обязательно используйте функцию
esc_attr_e()
вместоecho
внутри атрибутов!. Ну это так, на будущее — здесь не понадобится.3) добавьте дополнительные хелперы для превращения url в ссылки:
// используется в ooh_my_make_clickable и делает http строку ссылкой function ooh_my_make_url_clickable($matches) { $url = $matches[2]; $url = esc_url($url); if (empty($url)) return $matches[0]; return $matches[1] . "<a target=\"_blank\" href=\"$url\" rel=\"nofollow\">$url</a>"; } // Ищет любой http адрес и автоматически превращает в ссылку function ooh_my_make_clickable($ret) { $ret = ' ' . $ret; $ret = preg_replace_callback('#(?<=[\s>])(\()?([\w]+?://(?:[\w\\x80-\\xff\#$%&~/=?@\[\](+-]|[.,;:](?![\s<]|(\))?([\s]|$))|(?(1)\)(?![\s<.,;:]|$)|\)))+)#is', 'ooh_my_make_url_clickable', $ret); $ret = preg_replace("#(<a( [^>]+?>|>))<a [^>]+?>([^>]+?)</a></a>#i", "$1$3</a>", $ret); $ret = trim($ret); return $ret; }
Поместите эти хелперы в файл functions.php вашей активной темы и используйте везде, где пожелаете
4) Ваш код должен выглядеть примерно так:
<?php if( get_post_meta( $post->ID, 'avtor', true ) ) echo 'Источник: ' . stripslashes( ooh_my_make_clickable( get_post_meta( $post->ID, 'avtor', true ) ) ) ); ?>
Попробуйте это и дайте знать, если что-то не работает.