WP Manifestindependent plugin directory
manifest / content / wp-boycott-douban-db

Boycott Douban Database

自建娱乐资源备忘录

★ 1stars
v0.4.2latest · 4 years ago

Install

Download source zip No release zip yet

This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.

Install straight from GitHub with WP-CLI:

wp plugin install https://github.com/lifishake/wp-boycott-douban-db/archive/refs/heads/main.zip
No built-in updater. New versions won't appear under Dashboard → Updates. Install new releases yourself, or let Git Updater track the repository.

在Wordpress本地保存书籍、电影、游戏、音乐专辑信息,并以单幅或列表的形式展示出来。

  • Tags: infinite scroll, ajax, book, movie, game, album, personal collection, douban, imdb
  • Requires at least: 4.4
  • Requires PHP: 5.6
  • Tested up to: 4.10
  • Stable tag: 4.9.2
  • License: GPLv2 or later
  • License URI: http://www.gnu.org/licenses/gpl-2.0.html

功能

  • 后台保存电影、书籍、游戏、唱片信息
  • 插入到文章中显示
  • 后台半自动从豆瓣、imdb等网站抓取必要的信息。
  • 自建页面以图片墙的形式显示保存的资源

在文章中插入娱乐信息

  • 在文章或页面中插入如下短代码:
    [bddbr id='444' /]

在主题中加入信息墙页面

  • 在主题中创建页面模板
  • 修改页面模板,在适当的位置调用如下代码:
    bddb_the_gallery('book'); //book, movie, game, album
  • 使用模板创建空页面(page)

抓取信息

  • 后台“外部链接”输入豆瓣页面后,点击后面的按钮,可以从豆瓣网抓取对应的内容(不包括游戏)直接填入。海报图片不会自动抓取,需要在“图片链接”处再点击一次取得。
  • 电影信息支持通过omdb的API抓取imdb信息,用以对付一些豆瓣没有的条目。该API Key可以去omdbapi官网 申请。后台填入后即可使用。

书籍信息项目

注: 数字字符串表示显示顺序或者查询时排序顺序,▲表示默认未加但支持手动配置修改,⚪表示默认显示到固定位置,×表示不建议改动。下同。

意义 字段名 字段类型 列表排序 排序方法 列表详情位置 单幅位置 特殊处理
书名 display_name 字符串 10 ASC ⚪ ⚪ -
原名 original_name 字符串 ▲ - 01 01 与书名不同时显示
别名 aka 字符串 ▲ - ▲ ▲ -
简评 personal_review 字符串 × - ⚪ ⚪ -
外链 external_link 字符串 × - ⚪ ⚪ -
图片链接 poster_link 字符串 × - × × 后台用
出版时间 publish_time 字符串 03 DESC 02 21 可能与最终出版时间联动
阅读时间 view_time 字符串 02 ASC 03 ▲ 只显示年
评分 personal_rating 数字(0-100) 01 DESC ⚪ ⚪ -
地区 b_region 枚举 ▲ - ▲ ▲ -
作者 b_p_writer 枚举 ▲ - 01 02 -
译者 b_p_translator 枚举 ▲ - 12 03 -
编者 b_p_editor 枚举 ▲ - 13 ▲ -
分类 b_genre 枚举 ▲ - 04 ▲ -
出版社 b_publisher 枚举 ▲ - 20 05 -
全套册数 b_series_total 数字 × - 05 31 -
豆瓣ID id_douban 字符串 ▲ - ▲ ▲ -
豆瓣评分 score_douban 字符串 ▲ - ⚪ ⚪ -
特殊标志 b_misc_brand 枚举 ▲ - ⚪ ⚪ - 图标显示。详见QA No.4
系列标志 b_bl_series 布尔 × - × × 特殊用途,不建议修改
最终出版日 b_pub_time_end 字符串 × - ⚪ ⚪ 与出版日配合显示,不单独显示
封面们 b_series_covers 字符串 × - × × 后台字段,不建议修改

电影信息项目

意义 字段名 字段类型 列表排序 排序方法 列表详情位置 单幅位置 特殊处理
电影名 display_name 字符串 10 ASC ⚪ ⚪ -
原名 original_name 字符串 ▲ - 01 01 外片时显示
别名 aka 字符串 ▲ - ▲ ▲ -
简评 personal_review 字符串 × - ⚪ ⚪ -
外链 external_link 字符串 × - ⚪ ⚪ -
图片链接 poster_link 字符串 × - × × 后台用
首映时间 publish_time 字符串 03 DESC 02 21 -
观看时间 view_time 字符串 02 ASC 03 ▲ 只显示年
评分 personal_rating 数字(0-100) 01 DESC ⚪ ⚪ -
地区 m_region 枚举 ▲ - 05 11 -
导演 m_p_director 枚举 ▲ - 11 02 -
主演 m_p_actor 枚举 ▲ - 12 03 -
类型 m_genre 枚举 ▲ - 04 04 -
出品方 m_publisher 枚举 ▲ - ▲ ▲ -
编剧 m_p_screenwriter 枚举 ▲ - ▲ ▲ -
配乐 m_p_musician 枚举 ▲ - ▲ ▲ -
特殊标志 m_misc_brand 枚举 ▲ - ⚪ ⚪ - 图标显示。详见QA No.4
豆瓣ID id_douban 字符串 ▲ - ▲ ▲ -
豆瓣评分 score_douban 字符串 ▲ - ⚪ ⚪ -
IMDB编号 m_id_imdb 字符串 ▲ - ▲ ▲ -
IMDB评分 m_score_imdb 字符串 ▲ - ⚪ ⚪ -

游戏信息项目

专辑信息项目

安装

  • 确保php已经安装GD库。
  • 解压缩后上传至wordpress/wp-content/plugins/目录下
  • 激活插件
  • 进入wordpress后台设置画面进行设置

功能限制

  • 在Wordpress4.9.X下测试通过,Wordpress 5.X下未测试效果。
  • “插入文章显示”功能仅限短代码方式。
  • 激活插件后,将创建“book,movie,game,album”四个post种类,卸载插件后不会删除。(删除功能未支持)
  • 每条信息将向wp_posts表中插入1条记录,向wp_postmeta,wp_terms,wp_term_relationships中追加n条记录,在指定的图片缓存路径下创建1张海报和1张海报缩略图。(删除功能未支持)

Q&A

  1. 如何调整海报列表中所有信息的显示顺序?

    • 目前默认的数据库检索顺序为:个人评分D,接触时间A,出品时间A,作品名A。如果想调整,可以参照文档前面的项目信息,修改class-bddb-templates.php中对应项目的priority和sort的设定值。

      • 【例】修改图书列表显示顺序,改为阅读时间D,豆瓣评分D,作者A: 修改add_book_items函数。

        private function add_book_items() {
             //...
                $this->common_items['bddb_view_time']['panel_callback'] = array($this, 'panel_time_only_year');
             //开始追加1
             $this->common_items['bddb_view_time']['priority'] = "01";
             $this->common_items['bddb_view_time']['sort'] = "DESC";
             $this->common_items['bddb_publish_time']['priority'] = false;
             $this->common_items['bddb_personal_rating']['priority'] = false;
             //结束追加1
             //...
                    'b_p_writer' => array(    'name' => 'b_p_writer',
                                                    'label' => '作者',
                                                    'type' => 'tax',
                                                    'summary' => '02',
                                                    'panel' => '01',            
                                                 //开始追加2
                                                 'priority' => '03',
                                                 'sort' => 'ASC',
                                                 //结束追加2
                                                    ),
                 //...
                 'bddb_score_douban' => array(    'name' => 'bddb_score_douban',
                                             'label' => '豆瓣评分',
                                             //开始追加3
                                             'priority' => '02',
                                             'sort' => 'DESC',
                                             //结束追加3
                                             ),
        //...
  2. 如何调整图片列表详情的内容和显示顺序?

    • 如果想调整,可以参照文档前面的项目信息,修改如果想调整,可以参照文档前面的项目信息,修改class-bddb-templates.php中对应项目的panel的设定值。

      • 【例】修改电影列表显示详情,将别名显示在原名之后,将编剧显示在导演之后: 修改add_movie_items函数。

        private function add_movie_items() {
         //...
         $this->common_items['bddb_publish_time']['summary_callback'] = array($this, 'display_movie_publish_time');
         //开始追加1
         $this->common_items['bddb_aka']['panel'] = "02";
         //结束追加1
         $add_items = array(
             //...
             'm_p_screenwriter' => array(    'name' => 'm_p_screenwriter',
                                             'label' => '编剧',
                                             'type' => 'tax',
                                             //开始追加2
                                             'panel' => '02',
                                             //结束追加2
                                             ),
        //...
  3. 如何单幅信息显示的内容和显示顺序?

    • 如果想调整,可以参照文档前面的项目信息,修改class-bddb-templates.php中对应项目的summary的设定值。

      • 【例】修改电影单幅显示内容,去掉原名,将配乐显示在导演之后: 修改add_movie_items函数。

        private function add_movie_items() {
         //...
         $this->common_items['bddb_publish_time']['summary_callback'] = array($this, 'display_movie_publish_time');
         //开始追加1
         $this->common_items['bddb_original_name']['summary'] = false;
         //结束追加1
         $add_items = array(
             //...
             'm_p_screenwriter' => array(    'name' => 'm_p_musician',
                                             'label' => '配乐',
                                             'type' => 'tax',
                                             //开始追加2
                                             'panel' => '02',
                                             //结束追加2
                                             ),
        //...
  4. 如何使用特记图片功能?

    • 选中后台Book/Movie/Game/Album菜单对应的Brands子菜单,添加或者编辑tag。把tag的slug修改成特定的文字(建议用英文),然后在/img/路径下添加与slug同名的图片文件。完成后列表详细信息和单幅信息中会显示特定的图标。
      • 例:在Movie->Brands中新建一个tag,Name为“禁片”,slug为“404”。然后在/img/路径下添加一个404.png的文件。编辑电影“颐和园”条目,“特殊头衔”栏输入禁片标签,保存。则条目“颐和园”出现时会在最下一行显示404.png所对应的图片。
  5. 为什么四种信息的地区用了四个不同的字段记录,而不是使用同一个字段?

    • 后台统计条目的时候,会按照相同的字段跨类型统计,这样在后台列表上第一眼看到的数据就不准确。
    • 不仅地区,出版发行方信息和类别也都用了4个不同的字段。
  6. 如何使用图床缓存海报和封面?

    • 请自行研究。作者不喜欢图床,不会开发任何与图床或CDN有关的功能。
  7. 古腾堡编辑器下如何插入信息?

    • 请自行研究,作者不愿意支持古腾堡编辑器。

Releases

1 release.

Tag
Published
v0.4.2 latest
May 23, 2022 4 years ago

These releases are tags only. The author does not attach a packaged zip, so there are no download counts to report.