Як я можу тримати під контролем вміст моєї сторінки?


13

У нас є веб-сайт на базі WordPress, який надає документацію до нашого REST API. Оскільки наш API постійно змінюється, так само і з документацією. Однак ми хотіли б тримати під контролем версію документації, щоб вона могла відповідати командам API. Чи є спосіб, щоб сторінки WordPress отримували свій вміст із віддаленого сховища (наприклад, GitHub)? Або є спосіб перенести вміст до WordPress з якогось сховища?

Відповіді:


6

Ви вже вбудували щось подібне до цього: Ревізії .

// Define the nr of saved revisions in your wp-config.php
define( 'WP_POST_REVISIONS', 30 );

Ви можете просто захопити їх, зателефонувавши get_posts()з post_typeпро revision.

Щоб показати різницю між двома версіями, просто використовуйте wp_text_diff().

// Example
$revisions = get_posts( array(
    'post_type' => 'revision'
) );
echo wp_text_diff(
     $revisions[0]['post_content']
    ,$revisions[1]['post_content']
    ,array(
         'title'       => 'Revision diff'
        ,'title_left'  => $revisions[0]['post_title']
        ,'title_right' => $revisions[1]['post_title']
     )
);

Щоб відрізнятись, наприклад, останньою версією від версії до останньої, ви можете використовувати end( $revisions )['post_content']та відрізняти її $revisions[ count( $revisions ) -2 ]['post_content']. (Примітка: -2оскільки індекс масивів починається з нуля, і ви хочете, щоб версія була останньою.)


Мені подобається ідея Ревізії. Популярний плагін WP Documents Revision допомагає краще керувати версіями.
Ань Тран

@Rilwis Тоді повинна бути відповідь :)
kaiser

5

Ви можете використовувати гачок Git і дописувати на XML-RPC в WordPress. Гаком Git може бути будь-який виконуваний файл, навіть PHP.

Інший варіант - на GitHub - це використовувати гачок електронної пошти: Перейдіть https://github.com/username/projectname/admin/hooks, виберіть Електронна пошта та надішліть електронний лист до блогу. Увімкніть функцію " Опублікувати за електронною поштою ".


2
+1 Зараз нам просто потрібна комбінація обох функцій (побудована як надійний плагін ОП) :)
kaiser
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.