- Saved searches
- Use saved searches to filter your results more quickly
- funkypenguin/wp-phplist
- Name already in use
- Sign In Required
- Launching GitHub Desktop
- Launching GitHub Desktop
- Launching Xcode
- Launching Visual Studio Code
- Latest commit
- Git stats
- Files
- README
- About
- WP_List_Table – пошаговое руководство
- Предварительная работа
- Основы
- My List Table Test
- Сортировка
Saved searches
Use saved searches to filter your results more quickly
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.
WP-PHPLIst — Integrate PHPList with WordPress
funkypenguin/wp-phplist
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Sign In Required
Please sign in to use Codespaces.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching Xcode
If nothing happens, download Xcode and try again.
Launching Visual Studio Code
Your codespace will open once ready.
There was a problem preparing your codespace, please try again.
Latest commit
Git stats
Files
Failed to load latest commit information.
README
== INTRODUCTION == WP-PHPList is a WordPress plugin for integrating a PHPList installation within your WordPress blog, letting you add PHPList's powerful mailing list features to your blog, keeping your theme and URL path. WP-PHPList works by modifying a few critical files from PHPList 2.10.10 - it makes hardly any changes to WordPress, and so should be compatible with all versions from 1.5 onwards. (Current version is 2.8.1) == TUTORIAL AND COMMENTS == An updated tutorial (and discussion) is here: http://www.funkypenguin.co.nz/project/wp-phplist/ == INSTALLATION == Unpack the zipfile. The only two folders you need to be concerned with are "lists" (see WordPress below) and "wp-phplist" (see PHPList below) === PHPLIST === Copy the "lists" subfolder into your EXISTING PHPList installation. You will be OVERWRITING the following files: - lists/index.php - lists/admin/commonlib/lib/userlib.php - lists/admin/processqueue.php - lists/admin/subscribelib2.php WARNING - If you've made modifications to your PHPList installation, this may overwrite those modifications, and BREAK IT. I've provided a diff (phplist-2.10.10.patch) incase you want to manually update PHPList. Make sure your PHPList installation is setup correctly, required path and URL configuration settings are correct, etc. Also, make sure that you have at least one list, else the plugin won't display. === WORDPRESS === Copy "wp-phplist" to your wp-content/plugins/ directory. Activate the plugin from your admin panel, then go to Options -> PHPList to configure it. Confirm or change the following settings: - Page slug: What you want PHPList to be accessible as, for example: http://your.blog.com/newsletter - Subscribe page: PHPList lets you define multiple subscribe pages, each requesting different information from users, and making different lists available. Enter the number of the subscribe page you want to use (default is 1), or leave it blank to let PHPList prompt you. - Page title: The title WordPress will display on PHPList's page. - Relative path to PHPList: The path to your PHPList "lists" directory, relative to your WordPress root. By default the plugin assumes that the "lists" directory is a subdirectory of your WordPress install. == TEST WORDPRESS PAGE == That's it. Go to http://yourblog/slug (you chose the slug above) and check that it works. Remember to change your subscribe / unsubscribe / confirmation URLs in PHPList to reflect the new path that your users will use (http://yourblog/slug/?p=confirm, for example). == CAVEATS == We've "broken" the PHPList index file, which displays your subscribe pages, to make it fit into your blog. If you still want to use PHPList's interface as well as the interface within WordPress, you'll probably want another (unaltered) copy of lists/index.php. Let's assume you call it "index_for_wordpress.php". Edit wp-content/plugins/wp-phplist/wp-phplist-page.php, look for "index.php", and change it to "index_for_wordpress.php" For updated information / discussion, go to: http://www.funkypenguin.co.nz/project/wp-phplist/
About
WP-PHPLIst — Integrate PHPList with WordPress
WP_List_Table – пошаговое руководство
19.04.2012 08.08.2014 по Alex 7 625
Класс WP_List_Table в WordPress используется для отображения списка данных, например, пользователей, плагинов, комментариев или постов. Этот класс содержит почти все методы отображения, сортировки, разбиения на страницы и поиска информации. А что может быть очевиднее, чем его использование для создания собственных плагинов?
В этой статье мы постараемся разобрать по шагам создание таблицы, полностью подстроенной под ваши нужды. Здесь аренда выделенного сервера
Предварительная работа
Для пробы, мы создадим небольшой плагин, добавляющий пункт меню:
Основы
Для начала, мы создадим таблицу, имеющую только базовые функции. В первую очередь нам нужно убедиться, что необходимый класс включён, поскольку WP_List_Table не загружается автоматически:
Чтобы создать свою таблицу, вам нужно получить класс из WP_List_Table :
Далее создаём пример данных. Обычно эти данные читаются из базы данных:
array ( ‘ID’ = > 5 , ‘booktitle’ = > ‘Max Quick: The Pocket and the Pendant’ , ‘author’ = > ‘Mark Jeffrey’ ,
Прежде чем мы сможем отобразить данные в таблице, мы должны определить некоторые методы и переменные:
Метод get_columns() необходим для маркировки столбцов внизу и вверху таблицы. Ключи в массиве должны быть теми же, что и в массиве данных, иначе соответствующие столбцы не будут отображены.
prepare_items определяет два массива, управляющие работой таблицы:
- $hidden определяет скрытые столбцы (см. Опции экрана),
- $sortable определяет, может ли таблица быть отсортирована по этому столбцу.
Наконец, метод назначает данные из примера на переменную представления данных класса — items .
Прежде чем отобразить каждый столбец, WordPress ищет методы типа column_ , например, function column_booktitle . Такой метод должен быть указан для каждого столбца. Но чтобы не создавать эти методы для всех столбцов в отдельности, можно использовать column_default . Эта функция обработает все столбцы, для которых не определён специальный метод:
В нашем примере метод возвратит заголовок для каждого столбца, а если столбец не найден, будет отображено содержимое массива $item .
Это основные компоненты, необходимые для того, чтобы определить пользовательский класс таблицы. Теперь всё, что вам нужно — это добавить страницу администрирования, создать экземпляр нашего класса, подготовить элементы и вызвать display() , чтобы отобразить таблицу:
add_menu_page ( ‘My Plugin List Table’ , ‘My List Table Example’ , ‘activate_plugins’ , ‘my_list_test’ , ‘my_render_list_page’ ) ;
echo ‘
My List Table Test
‘ ;
Это минимальная возможная версия WP_List_Table:
Сортировка
В данный момент элементы представлены в таком порядке, в котором они определены в коде, т.к. класс WP_List_Table не содержит код для сортировки. Он содержит только небольшой код для маркировки сортируемых столбцов. В разделе «Основы» уже была строка $sortable = array(); , которая теперь будет изменена на:
Таким образом заголовки столбцов, о которых мы говорили выше, заменены на ссылки и теперь, когда вы проводите над ними мышью, рядом появляются маленькие треугольники. Второй параметр в массиве значений $sortable_columns отвечает за порядок сортировки столбца. Если значение true , столбец будет сортироваться в порядке возрастания, если значение false , столбец сортируется в порядке убывания, или не упорядочивается. Это необходимо для маленького треугольника около названия столбца, который указывает порядок сортировки, чтобы строки отображались в правильном направлении:
Если вы щёлкаете на заголовок столбца, страница будет перезагружена, а $_GET будет содержать что-то вроде этого:
С этой информацией вы можете написать метод для сортировки наших данных из примера:
Теперь, чтобы реально сортировать данные, мы должны расширить prepare_items() :