Сделал wordpress плагин, который позволяет расширить стандартный профиль пользователя wordpress. Бывает, что нужно сделать дополнительные поля в профиле для пользователей, например поле телефона или адреса и тд. Extend Profile PTS позволяет добавлять свои произвольные поля в профиль. После добавления дополнительных полей, эти поля отобразятся в профиле и их можно будет заполнить. Пример добавления произвольных полей и их заполнения на странице профиля смотрите на картинках ниже.


Выводятся заданные с помощью плагина поля в шаблон почти так же как и простые поля профиля. Подробнее об этом можно узнать в кодексе на этой странице.
Сначала с помощью функции get_userdata(); получаем все поля для пользователя:
<?php $curauth = get_userdata($author); ?>
Чтобы вызвать нужное поля профиля, мы обращаемся по его имени. Например имя пользователя (first_name) выводится так:
<?php echo $curauth->user_login; ?>
Имена полей можно посмотреть в исходном коде на странице профиля или в кодексе.
Все расширенные поля хранятся в базе в поле с именем "extend", а не в виде "имя - значение", поэтому вызываются расширенные поля немного иначе:
<?php echo $curauth->extend["pole_1"]; ?> <?php echo $curauth->extend["pole_2"]; ?> <?php echo $curauth->extend["pole_3"]; ?>
Этот код выведет первые три расширенных поля.
Выглядеть на сайте страница пользователя может например так:

В следующей версии сделаю функцию, которая будет автоматически выводить все расширенные поля.
Скачать wordpress плагин Extend Profile PTS можно здесь.
Скачено раз - 1884
Предложения, недочеты, баги пишите в комментариях на этой странице.
Версия 1.1 8 апреля 2010
Исправлена ошибка динамического добавления новых полей на странице настроек Extend Profile PTS. Добавлена возможность динамически удалять поля. Немного улучшен код. После деактивации плагина происходит очистка всех полей из БД, которые создал плагин.
Версия 1.2 15 мая 2010
Подробнее о изменениях в версии Extend Profile PTS 1.2
ordPress
плагины
при добавлении кода
в шаблон single.php появляется ошибка:
Warning: array_intersect_key() [function.array-intersect-key]: Argument #2 is not an array in /home/users2/l/lingvoreyder/domains/lingvoreyder.jino.ru/wp-content/plugins/extendProfile_PTS/extendProfilePTS.php on line 293
Warning: array_map() [function.array-map]: Argument #2 should be an array in /home/users2/l/lingvoreyder/domains/lingvoreyder.jino.ru/wp-content/plugins/extendProfile_PTS/extendProfilePTS.php on line 294
Warning: array_combine() expects parameter 1 to be array, null given in /home/users2/l/lingvoreyder/domains/lingvoreyder.jino.ru/wp-content/plugins/extendProfile_PTS/extendProfilePTS.php on line 295
Warning: Invalid argument supplied for foreach() in /home/users2/l/lingvoreyder/domains/lingvoreyder.jino.ru/wp-content/plugins/extendProfile_PTS/extendProfilePTS.php on line 300
что с этим делать?
Я не уверен, но использовать вывод полей нужно не в single.php, а на странице пользователя в author.php.
Добрый день! Какой плагин можно использовать, чтобы на сайте wordpress можно было установить анкету для регистрации пользователей типа как на сайтах знакомств?? спасибо
Впринципе этот плагин для wordpress и делает анкету, человек регистрируется на сайте и в профиле заполняет эту анкету. На старнице пользователя любые дополнительные поля, которые создает плагин Extend Profile PTS можно выводить.
Если нужно, чтобы дополнительные разные дополнительные поля заполнялись в момент регистрации, то попробуйте посмотреть на плагин для WordPress Register Plus. Там по-моему такое есть.
Отличный плагин, на мой взгляд — самый лучший из всех аналогичных.
По крайней мере, перебрав несколько штук, я остановилась именно на вашем плагине.
Спасибо!
Спасибо )
Нету плагинчика то..Пустая ссылка
Поправил ссылку. Плагин вновь доступен для скачивания )
Привет! Активируем, не идем в конфиг плагина а пытаемся обновить личный профиль получаем ошибку php:
Warning: Invalid argument supplied for foreach() in /var/www/blahblah.org/wp-content/plugins/extendProfile_PTS/extendProfilePTS.php on line 107
Warning: Cannot modify header information — headers already sent by (output started at /var/www/blahblah.org/wp-content/plugins/extendProfile_PTS/extendProfilePTS.php:107) in /var/www/blahblah.org/wp-includes/pluggable.php on line 890
Плагин вроде клёвый, но теперь исспользовать стремает…
1) Виталий, попробуйте отключить все остальные плагины, оставив активным только плагин Extend Profile PTS.
2) Если не будет работать, то напишите мне в аську, я посмотрю в чем может быть дело.
Вот все пишут «спасибо»… и хоть кто бы ретвит сделал бы…
Привет! ОГРОМНОЕ СПАСИБО за плагин.
В будущем будут изменения для удаления ненужных полей или это можно сделать в шаблоне wp?
И подскажи пожалуйста, как мне вывести на страницу всех пользователей сайта! Спасибо заранее.
Автору респект и уважуха! )
*Beer* ))
Отличный плагин, просто в «точку»! Было бы неплохо в нем реализовать удаление «ненужных полей» — AIM, ICQ и т.д. + возможность выбора позиции поля, чтоб не только внизу добавлялись, а в целом СПАСИБО!
Удалять ненужные поля где-то видел как, а пот оп поводу положения… тут все обусловлена наличием хуков в wordpress, хуки, которые отрабатывают раньше я не находил, пока только в этом месте (внизу).
Пользуйтесь, мне самому нравится он, для себя делал.
Установил ваш плагин и у меня он не заработал, то есть установился нормально, активировался, вхожу в настройки и при нажатии на кнопку добавить ничего не происходит. Соответственно и не работает окно ввода поля.
Плагин нужный и у меня есть идеи по его модернизации, если интересует то мог бы раписать подробнее. Спасибо.
Напишите мне в аську 240579 шесть 0 три.
Посмотрю, в чем у вас может быть дело.
Знаю, что полезный, для себя когда-то делал )
Сделаю в следующей версии, выбор типа добавляемого поля — input, textarea, select.
AlexPTS, в textarea больше поле для ввода. Поле само по себе уже подразумевает, что текста будет вводиться значительно больше. А так спасибо большое за плаг, поюзал, полистал код, наверно смогу сам добавить всё что мне необходимо… Плаг нужный!
P.S. Может захотите в следующей версии плагина сделать возможным выбор типа поля.
Добавил Textarea и Select в версии 1.2
Вадим, я думаю, что можно и текст арею добавить, только в чем разница между input и textarea? Для каких целей textarea нужен, для которых input не подойдет?
А плагин может добавлять только input’ы? А можно сделать так, чтобы можно было добавлять textarea?
Здравствуй, думаю, что не сложно под такую задачу немного изменить код. В аську пиши.
AlexPTS, здравствуй. Мне нужно реализовать следующее: для админа в профилях юзеров есть дополнительное поле, куда он может вписывать %скидки (простое число), сами юзеры могут видеть это число в своих профилях, но НЕ МОГУТ его редактировать. При этом, когда юзер находится в какой-либо единице товара, у которой задана цена (на сайте есть каталог товаров), то рядом с заданной ценой он видит свою скидку и цену для себя с учетом этой скидки (выставленной для него админом). С помощью твоего плагина и небольших подпиливаний такое реализовать можно или лучше смотреть в сторону cimy-user-extra-fields? Просто твой более простой, а мне для конкретной цели.
Нашел визуальный баг при добавлении поля, в следующей версии исправлю. На сегодня сделал еще пару мелочей. Как побольше правок сделаю, выложу на блог.
А какие нужны еще поля? В текстовое поле можно написать число, можно ссылку подставить. Если есть какие-то конкретные идеи, то пишите. Возможно сделаю.
Пока только текстовые поля. Поле — значение.
Чтобы удалить ненужное поле просто сотрите значение, оставив поле пустым. После сохранения оно удалится.
а как здесь ненужные уже поля удалять ?
Спасибо за плагин, а полей кроме как текстовых не будет ? )
3 поля в настройках плагина добавил и указал им значение в админке пользователя, чей профиль пытаешься просмотреть?
Вставляю в файл темы код выше, все 5 строчек одну за одной.
Однако не выводится нужная мне информация. что делать ?
Прикольно, сейчас попробую этот плагин на своем блоге.