Я создаю частную вики с помощью MediaWiki и добавляю специальную страницу с HTML, чтобы создать своего рода страницу входа в шаблон. Когда пользователь отправляет ввод, я хотел бы создать новую страницу WikiPage, заполненную вводимым текстом в формате, аналогичном моему шаблону. Я экспериментировал с семантическими формами, и они отлично справляются с разрешением действий шаблонов / форм, но все еще не совсем идеально. Для вики требуется только два шаблона главных страниц, поэтому я хочу просто создать их сам и сделать из него невероятно простой пользовательский интерфейс для других. Могу ли я сделать это только с помощью HTML и PHP или мне нужен вспомогательный JavaScript? Как сохранить данные из форм и программно сгенерировать с их помощью новую страницу WikiPage на PHP? Я выполнил new WikiPage(...)
и попробовал new Article(...)
, но полагаю, что мне все еще нужно взаимодействовать с базой данных.
Как создать новую статью MediaWiki с предварительно загруженным текстом на основе ввода HTML-формы?
Ответы (3)
Вам нужно будет сделать new WikiPage (), а затем doEditContent, вы можете попробовать посмотреть на этот простой код в расширении https://github.com/mkroetzsch/AutoCreatePage/blob/master/AutoCreatePage.php#L123, который автоматически создает страницы, если они не созданы. Документировано здесь https://www.mediawiki.org/wiki/Extension:AutoCreatePage
person
Sumit
schedule
07.07.2015
edit.php
может создать для вас статью, а исходный код короткий и легкий для понимания. .
person
Tgr
schedule
28.06.2015
Минимальный код:
$title = Title::newFromText( 'Desired page title goes here' );
if ( !is_null( $title ) && !$title->isKnown() && $title->canExist() ){
$page = new WikiPage( $title );
$content = ContentHandler::makeContent( 'Page content goes here', $title );
$page->doEditContent( $content, 'Edit summary goes here' );
}
person
Sophivorus
schedule
21.04.2018