yasherkrut
Ответы в темах
-
Форум: Проблемы и решения
Тема: WordPress и большая бдПри включённом ЧПУ слаг будет равен логину юзера.
Что бы сделать что Вы хотите — нужно изменить правила формирования ЧПУ. Вряд ли это хорошая идея.Как изменить правила формирования ссылок? У меня подключена авторизация через социальные сети, поэтому многие пользователи имеют логины вида «vkontakteuser», «facebookuser» и т.п. Вариант с логином не подходит. Мне нужно, чтобы url пользователя имел вид «http://site.ru/author/{id}» или просто «http://site.ru/{id}». ЧПУ пока отключено.
Форум: Проблемы и решения
Тема: WordPress и большая бдТогда у меня следующие вопросы:
1. Какой минимальной информации из БД Вордпрессу вообще достаточно для создания нового пользователя, если базу импортируют? Особенно имеется ввиду таблица wp_usermeta. На основе наблюдения, какие строки в БД создаёт ВП при регистрации нового пользователя, были импортированы таблицы в следующем виде:
wp_users:
ID, user_login, user_pass, user_nicename, user_email, user_url (оставляли пустым), user_registered, user_activation_key (пустое), user_status(0), display_namewp_usermeta (буду приводить значения столбцов meta_key и meta_value на каждого пользователя):
description —
rich_editing — true
comment_shortcuts — false
show_admin_bar_front — true
locale —
wp_capabilities — a:1:{s:6:»author»;b:1;}
wp_user_level
default_password_nag
nickname
admin_color — fresh
use_sslПосле этого можно было наблюдать успешно импортированный список пользователей в админке ВП, а также успешную авторизацию под любым из профилей. Однако, хочу убедиться в правильности данной операции и спросить Вас: как в идеале импортируются пользователи?
2. У меня в теме не было шаблона страницы author.php, поэтому спасибо, что подсказали. И вопрос такой: вот у меня уже есть 75 000 пользователей, мне достаточно добавить к себе шаблон author.php и в нём указать: какие данные о пользователе я хочу там выводить? ВП создаст эти страницы автоматически? Они будут так же отображаться в разделе «страницы»? И где я укажу, например, что у каждого юзера должен быть url вида «/id123»?
Форум: Проблемы и решения
Тема: WordPress и большая бдХостинг — timeweb. Создавались именно страницы (pages), а не посты. Настройки чтения — это пункт меню «Настройки»->»Чтение» в админке. Этот раздел теперь полностью пуст.
За незнанием как грамотно создать 75 000 страниц, было сделано следующее:
в functions.php написал такой код:
// создание страниц для 75 000 пользователей add_action( 'personal_options', 'ozh_personal_options2'); function ozh_personal_options2() { if(current_user_can('administrator')) { $current = get_current_user_id(); if ($current == 1) { // профиль админа $all_users = get_users('role=author&number=3000&offset=0&orderby=ID'); foreach ($all_users as $user) { $new_page = array( 'post_type' => 'page', 'post_title' => id . $user->ID, 'post_content' => '', 'post_status' => 'publish', ); $new_page_template = 'page-users.php'; $new_page_id = wp_insert_post($new_page); if(!empty($new_page_template)) { update_post_meta($new_page_id, '_wp_page_template', $new_page_template); } } } } }
Повесил это на хук персональные настройки, не ругайте сильно, без понятия был как решить задачу. Меняя значение offset (c 0, потом 3000, потом 6000…) создавал по 3000 страниц, пока не создал необходимое число.
- Ответ изменён 6 лет, 10 месяцев назад пользователем SeVlad. Причина: Оформляйте, пож, код как следует