[WordPress] 外掛分享: Eight Day Week Print Workflow

首頁外掛目錄 › Eight Day Week Print Workflow
WordPress 外掛 Eight Day Week Print Workflow 的封面圖片
10+
安裝啟用
★★★★★
5/5 分(2 則評價)
14 天前
最後更新
問題解決
WordPress 6.7+ PHP 7.4+ v1.3.0 上架:2015-11-15

內容簡介

Eight Day Week Print Workflow 外掛提供一套工具,讓使用者能在 WordPress 控制台中直接管理印刷工作流程,特別適合處理印刷「期刊」的文章分組、標籤及狀態管理。 【主要功能】 • 創建「印刷期刊」 • 添加及排序文章區段 • 指定文章狀態以符合印刷工作流程 • 限制印刷角色的存取權限 • 提供「唯讀」模式查看印刷期刊 • 支援 XML 匯出至 InDesign

外掛標籤

開發者團隊

⬇ 下載最新版 (v1.3.0) 或搜尋安裝
① 下載 ZIP → 後台「外掛 › 安裝外掛 › 上傳外掛」
② 後台搜尋「Eight Day Week Print Workflow」→ 直接安裝(推薦)
📦 歷史版本下載

原文外掛簡介

Eight Day Week provides a set of tools to manage your print workflow directly in your WordPress dashboard–right where your posts are! Primarily, it offers an interface to group, label, and manage the workflow status of posts in a printed “Issue”. Features: Create “Print Issues” Add and order sections, and articles within sections Assign article statuses specific to your print workflow Limit access to Print Roles Two custom roles are added by this plugin to best model a real-world print team. The Print Editor role offers full access to the creation interfaces, such as Print Issue, Article Status, Print Publication, etc. The Print Production role offers read-only access to a Print Issues. The XML export tool is also available to Production users. View a Print Issue in “Read Only” mode Circumvents the post locking feature by offering a read-only view of a print issue XML Export to InDesign: Classic Editor vs. Gutenberg Exports When exporting content from WordPress for use in InDesign, there are key differences between Classic Editor and Gutenberg (Block Editor) exports. This section highlights how each type of export behaves in InDesign and offers guidance on how to handle these differences. Classic Editor exports use basic HTML tags like

, , and , making them straightforward for import into InDesign. Gutenberg exports include additional metadata such as HTML comments () that define block-level structures, which may require manual adjustments after importing into InDesign. Import Differences: Classic Editor: Imports cleanly into InDesign without extra metadata. Gutenberg: May include block-related metadata, requiring users to clean up the imported content or manually adjust formatting. Recommendations: Classic Editor: Best for simple imports with minimal manual work. Gutenberg: Recommended for users comfortable with removing metadata or adjusting block-based settings after the import. Filters & Hooks Eight Day Week provides a number of filters and hooks for customizing and extending the plugin. Modules Eight Day Week follows a module-style approach to many of its features. These can be turned on or off via filters, and all work independently. These are: Article Byline Article Count Article Export Article Status Issue Publication Issue Status Any of these can be disabled by returning a false value from the following filter format: add_filter( 'Eight_Day_Week\Plugins\load_$plugin', '__return_false' ); The $plugin value is a slug version of the plugin name, i.e. article-byline. Article Table The information displayed in the list of articles within a Print Issue is filterable. Custom columns can be added via the following filters: Eight_Day_Week\Articles\article_columns and Eight_Day_Week\Articles\article_meta_$column_name. Sample usage: add_filter( 'Eight_Day_Week\Articles\article_columns', function( $columns ) { $columns['byline'] = _x( 'Byline', 'Label for multiple, comma separated authors', 'your-text-domain' ); return $columns; } ); add_filter( 'Eight_Day_Week\Articles\article_meta_byline', function( $incoming_value, $post ) { return implode( ', ', wp_list_pluck( my_get_post_authors_function( $post ), 'display_name' ) ); } Print Issue Table The information displayed in the list of Print Issues is filterable. Custom columns can be added via the following filter: Eight_Day_Week\Print_Issue_Columns\pi_columns. Note that this is a convenience filter, the base filter is manage_edit-print-issue_columns. See includes/functions/print-issue-columns.php for sample usage. Article Export The export of posts in a Print Issue is highly customizable, from the file name of the zip, to the file name of the individual files, to the contents of the files themselves. The best reference would be to read through includes/functions/plugins/article-export.php. Here’s a few examples used on the Observer. Sample Eight Day Week filters for the Observer Examples from Observer’s eight-day-week-filters.php: ID, 'nyo_dek', true ); return $elements; }, 10, 2 ); add_filter( 'Eight_Day_Week\Plugins\Article_Export\xml_outer_elements', function( $elements, $article ) { if( function_exists( '\Eight_Day_Week\Plugins\Article_Byline\get_article_byline' ) ) { $elements['byline'] = \Eight_Day_Week\Plugins\Article_Byline\get_article_byline( $article ); } return $elements; }, 10, 2 ); add_filter( 'Eight_Day_Week\Plugins\Article_Export\xpath_extract', function( $extract ) { $extract[] = [ 'tag_name' => 'pullQuote', 'container' => 'pullQuotes', 'query' => '//p[contains(@class, "pullquote")]' ]; return $extract; } ); add_filter( 'Eight_Day_Week\Plugins\Article_Export\dom', function ( $dom ) { $swap_tag_name = 'emphasized'; $extract_map = [ 'strong' => [ 'solo' => 'bold', 'inner' => 'em' ], 'em' => [ 'solo' => 'italics', 'inner' => 'strong' ], ]; foreach ( $extract_map as $tag_name => $map ) { $nodes = $dom->getElementsByTagName( $tag_name ); $length = $nodes->length; for ( $i = $length; -- $i >= 0; ) { $el = $nodes->item( $i ); $emphasized = $el->getElementsByTagName( $map['inner'] ); if ( $emphasized->length ) { $em = $dom->createElement( $swap_tag_name ); $em->nodeValue = $el->nodeValue; try { $el->parentNode->replaceChild( $em, $el ); } catch ( \Exception $e ) { } continue; } $new = $dom->createElement( $map['solo'] ); $new->nodeValue = $el->nodeValue; try { $el->parentNode->replaceChild( $new, $el ); } catch ( \Exception $e ) { } } } return $dom; } ); Known Caveats/Issues Gutenberg exports Gutenberg-based exports include some additional metadata/details that a Classic Editor-based export does not. Gutenberg stores block data in HTML comments, so you’ll notice those comments (in the form of ) appearing in the Eight Day Week XML export. Note that the XML is still valid–you can test and confirm that yourself using an XML validator–though depending on your version of InDesign you may get different results upon importing a Gutenberg export compared to a Classic Editor export. Our testing showed that those HTML comments in a Gutenberg export did not affect the import into InDesign however. You can test how this works in your version of InDesign with these sample XML files: Gutenberg XML, Classic Editor XML. You can also test how this works with full ZIP exports of Print Issues containing a Block Editor sample or a Classic Editor sample.

延伸相關外掛


文章
Filter
Mastodon