なんで?
それから、システムは新しいとはほど遠いが、通常のロシア語のドキュメントはまだない。 さまざまなコミュニティやブログに散らばっているすべてのものがあり、そのうち数十個があり、初心者ユーザーは前後に質問をします。
ロシア語の公式文書は維持されていません。 どうなっているかはわかりませんが、1年前はキリル文字が保存されていませんでした。
なぜnまたはzでそれをしないのですか?
これらのサイトにはホストがあるため、ユーザー名/パスワードを要求する必要があり、明日サイトが失われないという保証はなく、Googleのキャッシュにあなたの貢献を残します。
たとえば、公式Webサイトでアドオンについて書き込もうとすると、彼らはそれをやり直したのですが、ログインパスワードが適合しなくなりました。 登録することは不可能です。サポートの手紙で受け取る必要があります。 もちろん、これをもう一度やりたいという欲求はありません。
さらに、MODXコミュニティは団結力を誇ることができず、主要な開発者を1か所に集めてそこに何かを書くことはできません。
そして、あなたは何を提案しますか?
非常に簡単-よく知られたマークダウン形式でGitHubのドキュメントを維持する必要があります。
そのようなシステムは私たちを保証します:
- すべてのテキストの安全性 。 誰でもリポジトリをコピーしてホストできます。
- 変更履歴 。 すべての編集は完全なビューで、誰が何を書いたかは明らかです。
- 独立 。 MODXに関連するトピックについては、どの言語でも書くことができます。 そして、あなたはこれのためにアクセスを要求する必要はありません-GitHubにアカウントを持っているだけです。
アイデアは新しいものではなく、私はdaux.ioプロジェクトでそれを調べました。 これは、既製のマークダウンファイルを使用してサイトを生成するPHPスクリプトです。
これは非常にシンプルで、ホスティングを使用せずに、スキルをまったく使用せずにドキュメントを使用してWebサイトを実行できます。 しかし、私の意見では、いくつかの欠点があります(利点の続きです)。
たとえば、キャッシュなしでファイルごとにサイトを動的に生成しても、数千ページで適切に機能するかどうかはまったくわかりません。 また、検索、ページアドレスの管理、言語バージョン間の便利な切り替え、さらにはささいなこともありません。
そのため、ドキュメントを表示するために、お気に入りのシステム-MODXを使用しました。
どのように機能しますか?
これは標準のアドオンを使用して構築された通常のMODX Webサイトですが、そのページはすべてファイルからインポートされます。
それは与える:
- キャッシング すべてのドキュメントはキャッシュからダウンロードされるため、毎回HDDにファイルを保存する必要はありません。
- ドキュメントのURLを管理-検索エンジンからのナビゲーションを失うことなく移動できます。
- サイトで検索を整理する機能。
- 言語バージョンでの便利な作業は、任意の数にすることができます。
- 将来、サイトで承認(HybridAuth)とコメント(チケット)を有効にする機能。
サイトツリーにはドキュメントのみがあります。

テーブルの予備クリーニングでツリーを完全に更新できるようにしたいので、サービスページをその場で生成し、データベースに保存しません。 これは新しい概念です。どのように機能するか見てみましょう。
たとえば、サイトマップは次のように発行されます。
<?php if ($modx->event->name != 'OnHandleRequest' || $modx->context->get('key') == 'mgr') {return;} $alias = $modx->getOption('request_param_alias', null, 'alias'); $request = strtolower($_REQUEST[$alias]); if ($request == 'sitemap.xml') { $output = $modx->runSnippet('pdoSitemap', array('context' => 'web,en')); exit($output); }
検索ページは次のとおりです。
elseif ($request == 'search') { $doc = $modx->newObject('modResource'); $doc->fromArray(array( 'id' => 100000000, 'context_key' => $modx->context->key, 'pagetitle' => $modx->context->key == 'en' ? 'Search' : '', 'template' => 3, 'content' => ' [[!pdoPage@Search?context=`'.$modx->context->key.'`]] [[+page.nav]] ' )); $modx->resource = $doc; $response = $modx->getResponse(); $output = $modx->response->outputContent(); exit($output); }
つまり、作業はプラグインを介してOnHandleRequestイベントに進み、コンテキスト(言語バージョン)に依存します。
Bootstrap 3のレイアウトをスケッチして、携帯電話やタブレットから読みやすいようにしました。 仕事のために使用されます:
- pdoTools-近隣のドキュメント、すべてのメニューおよびブレッドクラムを出力します。
- mSearch2-形態学的検索。
- DateAgo-素敵な日付フォーマット
- yTranslit-Yandexの翻訳によるURLページの生成。
- MinifyX-高速ページ読み込みのためのスクリプトとスタイルの接着と圧縮。
- Markdownは、この形式でテキストを出力するための新しいスニペットです。 このプロジェクト専用に書きました。
この文書は誰のものでもないことを改めて思い出します。 出力用にサイトのバージョンを作成しました。リポジトリを複製して、同じdaux.ioで実行できます。ディレクトリとファイル構造は互換性があります。
プロジェクトの目標は、最終的にコミュニティにすべての情報を1か所で収集し、一緒に使用するツールを提供することです。 今すぐ参加しよう !
参照資料
Gitub ドキュメントリポジトリ 。
このドキュメントの結論を含むサイト 。
将来の計画:他のサイトにテキストを表示するための単純なAPIおよび(おそらく)URL短縮サービスの開発。
2014年1月15日に更新
ドメイン名に対する不満のため、ドキュメントはdocs.modx.proに転送されました 。
これ以上異議がないことを願っています。