Pull to refresh

Comments 18

Сколько раз говорили, не заливай на радикал!
Моя первая статья. Прошу не судить строго.
UFO just landed and posted this here
Спасибо за подсказку.
Зачем в таблицу wp-user добавлять поле, если можно использовать user_meta?
А вообще если бы такая задача стояла, наверное сделал бы через кукисы, создать новый размер картинок, создать картинки под новый размер(автоматически), проверить кукисы, в зависимости от значения выводить так или эдак. Тогда можно было бы и незарегистрированным пользователям изменять тип вывода постов.
Основная задача состояла в том, чтобы сделать выбор пользователя наиболее стабильным и независимым.
Вариант с Cookies был рассмотрен и откинут по причине того, что если пользователь удалит сookie или хотя бы просто поменяет браузер — его выбор будет сброшен.

Я описал лишь пример динамики шаблона. Подобным образом можно реализовать очень много. Например: пользователи выбирают рубрики и метки которые для них интересны. И в специально отведанном месте шаблона выводятся последние записи для каждого пользователя индивидуально. Согласитесь, что сброс таких настроек довольно негативно скажется на оценке пользователей вашего ресурса.
Ну да, выбор может быть сброшен, если использовать кукисы, но я писал применительно к этой задаче, ничего страшного если сбросится )
Если же что-то более сложное, то да, лучше хранить в БД, но все таки, используйте user_meta, и по ajax'у в WP: wp.smashingmagazine.com/2011/10/18/how-to-use-ajax-in-wordpress/
Ради интереса: что вас заставляет использовать в русской версии сайта шрифты, кириллицу не поддерживающие, а показывающие обычный Times New Roman большинству пользователей? Это такая форма садомазохизма новая, использовать неподдерживающие кириллицу шрифты на русскоязычных сайтах? Если вы уж и решились отличиться шрифтами, то, пожалуйста, ставьте там хоть sans-serif в конце или просто используйте шрифты, которые уже внедрили поддержку кириллицы. Простите, но:
image
Спасибо за критику. Учту, исправлю :)
Спасибо за критику. Учту, исправлю. Но кроме того, я опубликовал статью с вариантом решения интересной задачи, мне прежде всего интересует ваге мнение касательно данной тематики. Если же вы хотите оставить отзыв о дизайне сайта, предложения по его улучшению и прочую критику, то вы можете сделать это непосредственно на сайте. Я и мои коллеги с радостью рассмотрим все предложения и исправим все ошибки.
В style_updater.php не производится проверка пользователя, можно не себе а другому пользователю поменять стиль.
Вообще не вижу смысла в функции getPage(obj) отправлять ID пользователя.
В style_updater.php вы его итак сможете получить с помощью get_current_user_id()
Не используйте функции mysql_* — это уже атавизм!
Как минимум mysqli_*
Нормальный подход — pdo
Модный подход — doctrine 2
Большое спасибо lifestar и nskforward за критику. Все замечания рассмотрены и по возможности исправлены. Статья соответственно тоже обновлена.
Хорошего вам кода.
А что даёт подключение '../../../wp-includes/pluggable.php';?
Вместо
$current_user = wp_get_current_user();
$ID = $current_user->ID;
можно сделать так
$ID = get_current_user_id();
Подключение
'../../../wp-includes/pluggable.php';
даёт возможность использовать функцию
<?php wp_get_current_user(); ?>
для получения всей информации о пользователе.
Как я уже говорил, я навёл лишь пример использования такого подхода. Область его применения ограничивается только вашей фантазией. И в некоторых случаях получить только ID — может оказаться недостаточно. Поэтому я использовал более универсальных вариант.
В том случае, если вам необходим только ID пользователя, то вы вполне можете использовать
<?php 
get_current_user_id(); 
// $ID = get_current_user_id(); 
?>
не люблю универсальность.
только конкретная задача.
надо будет — подправим.
А усложнять код ради универсальности не моё))

P.S. get_current_user_id сработает и без wp-includes/pluggable.php
Ну, а для некоторых пользователей лучше наоборот)

P.S. Да, всё верно
Если одним словом — то ужас :) особенно там, где вы подключаетесь к базе данных WordPress, подключаете файлы wp-config.php и pluggable.php, и ajax запрос на файл. Больно смотреть на ваш код.

Настройки пользователя нужно сохранять и получать используя get_user_meta(), текущего пользователя можно получить с помощью get_current_user_id(), картинки уменьшать и обрезать можно с помощью add_image_size(), вывести миниатюру можно одной функцией the_post_thumbnail(), скрипты и стили нужно подключать с помощью wp_enqueue_script() и wp_enqueue_style(), а ajax совершенно по другому работать должен — через admin-ajax.php. И это только начало.

Прошу вас, не учите людей пока сами не научились.
Sign up to leave a comment.

Articles