Впишите
номер подписки впереди и получил несколько сообщений с запросами, например vue, react, но у меня не было настроения заниматься поиском по ключевым словам, поэтому я оставил это в стороне
Когда я исправлял проблему стиля домашней страницы блога, мне довелось увидеть предыдущий пост: графические сообщения публичной платформы WeChat генерируются автоматически, и есть упоминания о плагинах WordPress, поэтому я добавил функцию автоматического ответа в учетную запись подписки.
Вот ~ это выглядит так:
Проблема стиля PS заключается в том, что в firefox white-space: no-wrap контейнера приведет к переносу подэлементов float-right. Предполагается, что firefox не соответствует требованиям. Подробности см. В демонстрации.
PS К тому же firefox57 действительно намного шустрее предыдущей версии.Раньше мне казалось, что Chrome побил его по памяти.
1. Выбор плагина В
предыдущем сообщении блога упоминалось два плагина:
Плагин WordPress wechat_subscribers
Особенности: Автоматический ответ на последние статьи, случайные статьи, результаты поиска и т. Д., Всегда бесплатно
Адрес: https://github.com/Soopro/wechat_subscribers
Плагин WordPress Wechat-Manager
Особенности: автоответчик по ключевым словам на последние статьи, самые комментируемые статьи за неделю / месяц / год, результаты поиска статей
Адрес: https://github.com/9IPHP/Wechat-Manager
По прошествии более года я побежал посмотреть его еще раз и обнаружил, что он вроде все еще поддерживается. После пробной версии я выбрал wechat_subscribers. Основные преимущества:
Фиксация выглядит более профессионально и внимательнее, например, переименовать метод., Переименовать класс., Чистый комментарий.
Есть длинный список изменений, он кажется надежным
Проверка токена пройдена (токен Wechat-Manager никогда не может быть проверен ... так что выбора на самом деле нет)
Недостатки:
Документация очень плохая, в файле readme нет подробных инструкций по установке, а формат очень запутан.
К счастью, для общедоступной платформы WeChat требуется только один токен. Я попытался использовать его, и результат был относительно удовлетворительным
. 2. Шаги установки
1. Загрузите исходный код плагина
https://github.com/ayqy/wechat_subscribers
Просто используйте ветку разработки по умолчанию, загрузите и разархивируйте
PSWordPress 4.3.13 доступен для профессионального тестирования, и другие версии должны подойти, потому что плагин не имеет зависимостей и используются только несколько API WordPress (например, get_posts, get_results).
2. Установите и включите
установку: перетащите распакованную папку в каталог wordpress / wp-content / plugins на ftp, даже если установка завершена.
Включить: войдите в фоновый режим WordPress, введите плагин из меню слева, найдите «Управление учетной записью подписки WeChat», включите
Затем вам нужно получить доступ к публичной платформе WeChat через токен.
3. Настройте
шаги работы с токеном :
Найдите «Управление учетной записью подписки WeChat» в левом меню серверной части и войдите в «Настройки плагина».
Заполните токен, сохраните изменения, и вы получите URL
Войдите в серверную часть общедоступной платформы WeChat, введите «URL» и «Токен» в левой части «Разработка / Базовая конфигурация -> Конфигурация сервера / Изменить конфигурацию» (используя URL-адрес, полученный на предыдущем шаге, и введенный вами токен), произвольно сгенерируйте EncodingAESKey и выберите «открытый текст» Mode ", отправить
(Вы вернетесь на предыдущую страницу после успешной отправки) Включите конфигурацию сервера, и статус панели изменится на «Конфигурация сервера (Включено)»
На этом этапе токен настроен (две стороны установили доверительные отношения в соответствии с установленным «соглашением»).
4. Добавьте правила автоматического ответа
на пробный этап, войдите в бэкэнд WordPress и слева «Управление учетной записью подписки WeChat / индивидуальный ответ -> добавить новый ответ»
Плагин предоставляет 3 триггерных механизма (механизм сопоставления сообщений):
Нормальный: нечеткое соответствие ключевых слов
По умолчанию: случай по умолчанию, если другие правила не совпадают
Подписка: срабатывает при добавлении нового подписчика
Например, добавьте тестовое правило:
回复标题 test
关键字 测试,test,t
触发 普通
发布 勾选
类型 纯文本
内容 hoho
Сохраните и выйдите, WeChat входит в учетную запись подписки, чтобы отправить «test or test or t», вы сразу получите ответ «hoho».
Формат ответного сообщения поддерживает:
Простой текст
Графическое сообщение: похоже на графическое сообщение на публичной платформе WeChat, со ссылками на изображения и статьи.
Последние новости: последние статьи
Случайное сообщение: случайным образом выберите несколько статей
Ключевые слова для поиска: результаты поиска по сайту
Наиболее полезными должны быть ключевые слова для поиска, которые могут отбросить список сообщений в блогах, которые нужны пользователям. Конечно, основные функции также хороши.
3. Оптимизация результатов поиска.
Попробуйте поиграть и обнаружите, что результаты ответа не очень соответствуют ключевым словам запроса, например:
关键字 redux
结果
MobX
react-redux源码解读
dva
Плагин по умолчанию использует собственный API WordPress get_posts, отсортированный по дате выпуска, поэтому полученные результаты не очень научны.MobX и dva упоминают лишь небольшое сокращение контента, и они также включены.
Да, нам нужно повысить релевантность результатов поиска. Самый простой вариант - это взвесить, а затем всесторонне отсортировать по весу, например:
匹配项 权重
标题 3
分类 1
tag 1
内容 0.5
评论 0.3
Список статей, которые все соответствуют, рассчитывается по весу, а затем сортируется в порядке убывания, что и является результатом, который я хочу. Соответствующий код PHP выглядит следующим образом:
// from interface.php/getSearchPosts
// ID, post_content, post_excerpt, post_title
// extra: post_type, post_modified
$posts = $wpdb->get_results($wpdb -> prepare("select ID,post_content,post_excerpt,post_title,post_type,post_modified from db_wp_posts where post_status = 'publish' order by ((CASE WHEN post_title LIKE '%{$keyword}%' THEN 2 ELSE 0 END) + (CASE WHEN post_content LIKE '%{$keyword}%' THEN 1 ELSE 0 END)) DESC, post_modified DESC, ID ASC limit $re_count"));
Найдите заголовок и контент, соответствующие ключевым словам из опубликованных статей в таблице db_wp_posts, и оцените их (вес заголовка 2, вес контента 1), а затем отсортируйте их в порядке убывания, возьмите первые результаты запроса $ re_count
Обратите внимание, что здесь используется простая функция case в SQL, очень гибкий трюк.
4. Исходный
адрес на Github: https://github.com/ayqy/wechat_subscribers.
структура
wechat_subscribers/
css/
img/
js/
language/ # 多语言支持,WordPress插件惯用的pm,po文件
__wechatsucks__.php # 黑科技,token验证不通过时可以试试
_edit.php # 和下面3个都是后台页面及配置表单
_general.php
_history.php
_settings.php
ajax_request_handle.php # 配置表单需要的博文列表,现查
class-wpwsl-general.php # 注册新增规则页
class-wpwsl-history.php # 消息记录页
class-wpwsl-history-table.php # 注册消息记录页
class-wpwsl-list-table.php # 博文表格交互,排序/分页
class-wpwsl-settings.php # 注册到左侧菜单
content.php # 插件首页,都是废话
index.php # 没用
interface.php # **核心部分** 站内搜索,收发消息
posttype_wpwsl_template.php # 后台配置数据格式
wpwsl_core.php # 插件入口,注册
Форк Todo
пришел сюда, чтобы делать несколько вещей:
Перепишите ридми (исходная версия слишком ненормальная, использовать не хочу) 100%
Результаты поиска отсортированы по релевантности (по умолчанию отсортированы по дате) 100%
Расширенная функция 0%
Ключевое слово поддерживает константы типа (например, число)
Команды поддержки (такие как сообщение, topN)
Интересные функции (например, голосовой запрос)
Ссылка на
WordPress get_posts по названию, например
КАК УЛУЧШИТЬ ВНУТРЕННИЙ ПОИСК В WORDPRESS : WordPress 搜索 插件
Технические документы публичной платформы WeChat