SMFメッセンジャーを利用しています。 フォーラム エンジンの自動検出。 ロシア語言語パックのテーマとインストール

私が Joomla なしでは生きていけないことは誰もが知っていますが、私の意見では、コンポーネントに関する適切なフォーラムはありません。 それが、私がフォーラム エンジンを使用する理由です。 私が最近使い始めた新しいものの 1 つは、役立つことを期待して新しい SMF カテゴリを開始しましょうです。 小規模から始めますが、初心者にとっては非常に役立ちます。

検索エンジン最適化の第一歩 Simple Machines Forum: 著作権と外部リンクの削除

すぐに予約させていただきますが、私は smf 2 のみを使用しており、この記事は特にこのバージョンの無料フォーラム エンジンに関連するものです。

そのため、私がフォーラムの Web サイトを含むエンジンの公式 Web サイトに「10」個の外部リンクを置くことがどれほど好きではないかを、常連の読者はご存知でしょう。 そのため、まず著作権を削除し、「」形式の外部リンクを 4 つ、注意して 4 つ削除します。 SMF 2.0.2 | 単純な機械 | SMF © 2011 | XHTML"! これを行うには、FTP forum/Themes/ 経由でサイトに接続します。 テーマの名前/ そしてファイルを編集します インデックス.テンプレート.php。 当然のことですが、一番下には、あまり好きではない外部リンクを表示するコード (約 330 行目) があります。 したがって、「」を削除します。

  • "、theme_copyright()、"
  • " そして "
  • ", $txt["xhtml"], "
  • "。すべてとてもシンプルで簡単です。今後の出版物では、SMF/フォーラムの促進と最適化に関する新しい資料を期待してください。

    すぐにメインのスクリプト コードから始めましょう。

    #!/usr/bin/perl

    # what-forum.pl スクリプト
    # (c) 2010 Alexandr A Alexeev、http://site/

    厳密を使用します。

    # コメント行 - 厳密にするため
    # タスクがエンジン統計を収集することである場合は、そのままにしておきます
    # フォーラムのリストを作成する場合 - コメントを解除します

    私の $data ;
    $data .= $_while (<> ) ;

    # フッターにリンクがない状態で Powered by phpBB の金額を確認する
    印刷 "phpbb \n"
    if ($data =~ /]+href="[^"]*http:\/\/(?:www\.)?phpbb\.com\/?"[^>]*>phpBB/iまたは
    # $data =~ /viewforum\.php\?[^""]*f=\d+/i または
    $data =~ /phpBB\-SEO/i または
    $データ =~ /) ;
    「ipb」を印刷します \n"
    if ($data =~ /]+href="[^"]*http:\/\/(?:www\.)?invision(?:board|power)\.com\/?[^"]*"[^>]*> [^<]*IP\.Board/i または
    $データ =~ /]+href="[^"]*http:\/\/(?:www\.)?invisionboard\.com\/?"[^>]*>Invision Power Board/iまたは
    $データ =~ /

    /私または
    $データ =~ /index\.php\?[^""]*showforum=\d+/i) ;
    「vbulletin」を印刷する \n"
    if ($data =~ /Powered by:?[^<]+vBulletin[^<]+(?:Version)?/i または
    $データ =~ /) ;
    印刷 "smf \n"
    if ($data =~ /]+href="[^"]*http:\/\/(?:www\.)?simplemachines\.org\/?"[^>]*>SMF/i を利用または
    $データ =~ /index\.php\?[^""]*board=\d+\.0/i) ;
    印刷「パンブ」 \n"
    if ($data =~ /]+href="[^"]*http:\/\/(?:(?:www\.)?punbb\.org|punbb\.informer\.com)\/?"[^>]*>パンBB/i) ; #または
    # $data =~ /viewforum\.php\?[^""]*id=\d+/i);
    「フラックスBB」を印刷する \n"
    # if($data =~ /viewtopic\.php\?id=\d+/i または
    if ( $data =~ /]+href="http:\/\/(?:www\.)fluxbb\.org\/?"[^>]*>FluxBB/i) ;
    「exbb」を印刷します \n"
    if ($data =~ /]+href="[^"]*http:\/\/(?:www\.)?exbb\.org\/?"[^>]*>ExBB/i) ; # または
    # $data =~ /forums\.php\?[^""]*forum=\d+/i);
    印刷「ヤブ」 \n"
    if ($data =~ /]+href="[^"]*http:\/\/(?:www\.)?yabbforum\.com\/?"[^>]*>YaBB/iまたは
    $data =~ /YaBB\.pl\?[^""]*num=\d+/i ) ;
    「ドルフォーラム」を印刷 \n"
    if ($data =~ /\(DLE フォーラムの提供\)<\/title>/私または
    $データ =~ /]+href="[^"]+(?:http:\/\/(?:www\.)?dle\-files\.ru|act=copyright)[^"]*">DLE フォーラム<\/a>/私) ;
    プリント「アイコンボード」 \n"
    if ($data =~ /]+href="[^"]*http:\/\/(?:www\.)?ikonboard\.com\/?[^"]*"[^>]*>Ikonboard/iまたは
    $データ =~ /
    if ($data =~ /
    # if($data =~ /forums\.php\?fid=\d+/i または
    # $data =~ /topic\.php\?fid=\d+/i または
    if ($data =~ /]+href="http:\/\/(?:www\.)?flashbb\.net\/?"[^>]*>FlashBB/i) ;
    「ストークシット」を印刷する \n"
    # if($data =~ /forum\.php\?f=\d+/i または
    if ($data =~ /]+href="http:\/\/(?:www\.)?stokesit\.com\.au\/?"[^>]*>[^\/]*ストークス IT/i) ;
    「表彰台」を印刷する \n"
    # if($data =~ /topic\.php\?t=\d+/i または
    if ($data =~ /]+href=[""]?http:\/\/(?:www\.)?sopebox\.com\/?[""]?[^>]*>Podium/i) ;
    印刷 "usebb \n"
    # if($data =~ /forum\.php\?id=\d+/i または
    if ($data =~ /]+href="http:\/\/(?:www\.)?usebb\.net\/?"[^>]*>UseBB/i) ;
    「wrforum」を印刷 \n"
    # if($data =~ /index\.php\?fid=\d+/i または
    if ($data =~ /]+href="http:\/\/(?:www\.)?wr\-script\.ru\/?"[^>]*>WR\-Forum/i) ;
    「さらに別のフォーラム」を印刷する \n"
    if ($data =~ /Yet Another Forum\.net/i または
    $データ =~ /default\.aspx\?g=posts&t=\d+/i) ;

    このスクリプトと、このアーカイブの投稿で言及されている他のスクリプトが見つかります。

    脚本 どのフォーラム.pl HTML ページのコードを調べて、フォーラム エンジンの署名が含まれているかどうかを確認します。 WordPress と Joomla を定義するときに同様の手法を使用しましたが、いくつかの違いがあります。 まず、スクリプト自体はページ コードをロードせず、stdin または引数として渡されたファイルからページ コードを読み取ります。 これにより、たとえば wget を使用してページを一度ダウンロードし、複数のアナライザーがある場合はそれを複数のアナライザーで実行できます。 次に、このスクリプトでは、署名の存在は 100% エンジンの兆候です。 前回は、署名の存在は対応するエンジンに重みを加えるだけであり、最も大きな重みを持つエンジンが「勝利」しました。 この場合、そのようなアプローチはコードを不必要に複雑にするだけであると判断しました。

    スクリプトをテストするために、いくつかの調査を行いました。 私は数千のフォーラムのリストを編集し、スクリプトでそれぞれを実行して、プログラムの応答の割合とさまざまなエンジンの人気を判断しました。

    フォーラムのリストを取得するために、Google パーサーを使用しました。 このようなクエリが検索エンジンに送信されました

    サイト:forum.*.ru
    サイト:talk.*.ru
    サイト:board.*.ru
    サイト:smf.*.ru
    サイト:phpbb.*.ru
    ....

    等々。 完全なクエリ ジェネレーター コードはファイル内にあります。 gen-forumsearch-urls.pl。 zone.ru に加えて、.su .ua .kz および .by も使用されました。 前回は、WordPress と Joomla サイトの URL にそのような署名がないため、このような調査を行うことは困難でした。 cmsmagazine.ru/catalogue/ などのカタログでは、十分なサンプル サイズが提供されていません。 600 Drupal サイトとは何ですか?

    正直に言うと、実験の結果にはがっかりしました。 調査された 12,590 のサイトのうち、エンジンの特定に成功したのは 7,083 サイトのみ、つまりケースの 56% のみでした。 もしかしたら何かのエンジンを考慮していなかったのでしょうか? フォーラムの半数に Bitrix がインストールされているというのは本当ですか? それとも署名を探すのにもっと時間を費やすべきだったのでしょうか? 一般に、ここでは追加の調査が必要です。

    特定に成功したエンジンの 56% のうち、最も人気があったのは予想通り、IPB (31%)、phpBB (26.6%)、および vBulletin (26.5%) でした。

    これに大きな遅れをとって SMF (5.8%) と DLEForum (5.3%) が続きます。 私のお気に入りのダジャレは 6 位 (1.64%) にとどまりました。 これらの数字をあまり信頼することはお勧めしません (RuNet のフォーラムは 3 つおきに IPB で実行されていると言われています) が、もちろん、一定の結論を導き出すことは可能です。

    たとえば、フォーラム エンジンでサイトを作成し、フォーラムを変更する予定がある場合 (たとえば、メッセージごとにユーザーに 0.01 ドルを支払い、週に 1 回資金が自動引き落とされるようにする)、最も人気のある 3 つのエンジンのいずれかを選択する必要があります。 フォーラムの人気が高くなればなるほど、そのフォーラムに精通したプログラマーを見つける可能性が高くなります。

    エンジンに大きな変更が期待されない場合は、SMF や punBB など、あまり人気のないエンジンを選択するのが合理的かもしれません。 これにより、フォーラムに対するハッカー攻撃の数が減り、フォーラムに自動的に送信されるスパムの量が減ります。

    フォーラムを検索/識別するためのスクリプトにも、多くの実用的な用途が見つかります。 最初に思いついたのは、特定されたフォーラムを TIC ごとに分類し、私のサイトの 1 つへのリンクを含む最初の 100 件の投稿に投稿することでした。 ただし、何百ものフォーラム dofollow リンクは TCI にまったく影響を与えませんでした (2 つの更新が経過しました)。そのため、移行に興味がない場合を除き、ここで時間を無駄にしない方が良いでしょう。

    前述したスクリプトの使用法が唯一のものではないことは明らかです。 他にどのように使用できるかは簡単に理解できると思います。

    ブログ サイトの読者の皆さん、こんにちは。 そこで、SMF と呼ばれるフォーラム エンジンのセットアップに関するトピックを続けます。SMF についての投稿で開始しました。 英語インターフェースからの翻訳という点では、フォーラムをまだロシア語にしていません。 現時点ではあまり見栄えがよくありませんが、ロシア化(まだ行われていない場合)と適切なセクションの作成後、外観は大幅に改善されます。

    今日は、デザイン テーマを見てロシア語にし、両方のエンジン (Jumla と SMF) で動作できる JFusion コンポーネントもインストールします。これにより、2 つの共通のユーザー ベースを持ち、フォームを 1 つだけ使用できるようになります。登録とログイン。

    ロシア語言語パックのテーマとインストール

    Simple Machines フォーラム エンジンはテーマを変更する機能をサポートしており、フォーラム全体と、特に個々のセクションの両方でテーマを変更できます。 個人的にはデフォルトのテーマを使用しましたが、手動でかなりの変更を加えました。 特に、背景、一部の要素の色を変更し、フラッシュ ドライブの時計、ラジオなどを追加しました。これについては、このセクションの後続の投稿で説明します。

    フォーラムを作成するときに追加のテーマを使用しなかったのはなぜですか? まあ、それは私の怠惰のせいかもしれません。 いいえ、新しいテーマを検索してダウンロードするのが面倒だったわけではありません。幸いなことに、それを実行できる場所はたくさんあります。 私の怠惰は別のところにあります。

    実際のところ、このエンジンの機能を拡張するために設計されたこのエンジンのさまざまな MOD は、特にデフォルトのテーマに焦点を当てています。 説明しましょう。 デフォルトのテーマがある場合、SMF への MOD の追加は数秒で完了し、原則としてコードを手動で編集する必要はありません。

    デフォルトとは異なるデザインテーマを持つ MOD をインストールする場合は、よく言われるように、すべての生の部分をファイルで処理する必要があります。 言い換えれば、FileZilla を使用する必要があります (ダウンロードして設定します。FTP 経由でサイトにアクセスし、フォーラム エンジンのファイルを編集するために開くことができます。この MOD はファイルに変更を加えます)。

    次に、コード内の適切な場所を探し、必要なアクションを実行します。コードを置換するか、必要なフラグメントの前後にコードのセクションを削除または追加します。 変更を加える必要があるファイルが 12 個ほどあると考えれば、これを行うのがどれほど面倒か想像できるでしょう。 この場合、間違いを犯さないように細心の注意を払う必要があります。そうしないと、フォーラムが開かなくなる可能性があります。

    デフォルト以外のテーマを使用する場合の上記の問題がすべて怖くない場合は、ここからダウンロードできます。 そこにあるテーマはセクション (ミニマリズム、クラシックに近い、モダンなど) に分類されており、それぞれのテーマのスクリーンショットを全画面で見ることができます。 これらと同じテーマをインストールする方法については、後ほど説明します。

    この記事の最初の部分で説明したように、エンジン ファイルをホスティングにアップロードする段階でフォーラムを Russify しなかった場合 (記事の最初のリンクを参照)、今すぐ実行できます。 このページから事前にダウンロードした必要な言語パックを含むロシア語言語パックを解凍し、Themes フォルダーをルート フォルダーにコピーする必要があります。ルート フォルダーには、同じ名前のディレクトリがすでに存在します。

    コピーが完了したら、管理者のユーザー名とパスワードを使用してフォーラムにログインする必要があります。 上部のメニューで「管理者」を選択し、左側の列の「サーバー設定」をクリックします。

    開いたウィンドウで「デフォルトのフォーラム言語」項目を見つけ、ドロップダウンリストからロシア語を選択し、ページの下部にある「保存」ボタンをクリックします。

    これで、会議は完全にロシア語になります。

    ロシア語をサポートしていない MOD をインストールする際の問題を解決する

    今後、ロシア語に翻訳されていない MOD を SMF に追加すると、管理パネルでの MOD 設定の表示に問題が発生する可能性があることに注意してください。 実際には、これらの同じ設定は管理パネルに表示されないだけです。 彼らのためのロシア化ファイルは存在しません。 したがって、この問題を解決するには 2 つのオプションがあります。

    1 つ目の方法は、フォーラム全体を英語に切り替えることです。 これを行う方法については、上の数段落で説明します。 したがって、これらの設定で必要な操作を実行した後、再度ロシア語に戻る必要があります。

    2 番目の方法はより複雑ですが、英語がアクティブになっているときだけでなく、管理パネルでインストールされている MOD の設定を常に確認できるようになります。 この点について詳しく説明するのは、誰かが MOD をインストールしたのに、カンファレンスの管理パネルでその設定が見つからないという質問が非常によくある質問だからです。

    したがって、2 番目の方法は、新しく追加された MOD の Russification ファイルに翻訳文字列を追加することです。 どの Russification ファイルを変更する必要があるかを判断する方法と、それらのファイルをどこで入手できるかについては後ほど説明します。 それまでは、一時的に最初の方法を使用できます。

    Web サイトとフォーラムの統合のための JFusion のインストール

    まず、JFusion とその Russification をダウンロードする必要があります。 Joomla 管理パネルに入ると、標準的なアクションを実行します。管理パネルのトップメニューから項目「拡張機能」-「インストール/アンインストール」-「パッケージファイルのダウンロード」-「参照」ボタンを選択します。コンピュータ上のコンポーネント jfusion_package.zip - 「ファイルをアップロードしてインストール>」ボタンをクリックします。

    この後、コンポーネントが正常にインストールされたことを通知するウィンドウが表示されます。 問題が発生した場合は、上記のリンクでいくつかの解決策を理解することができます。

    次に、Russification の時間です。Russification は、コンポーネント自体とまったく同じ方法で追加されます。 それらの。 一連の操作を繰り返します。「拡張機能」 - 「インストール/アンインストール」 - 「パッケージ ファイルのダウンロード」 - 「参照」ボタン - コンピュータ上で JFusion Russification ファイルを見つけます - 「ファイルをダウンロードしてインストール」ボタンをクリックします。 これで、「コンポーネント」-「JFusion」のパスに沿って設定に移動し、Russification が正常に追加され、機能していることを確認できます。

    頑張って! ブログサイトのページでお会いしましょう

    興味があるかもしれません

    SMF フォーラムと Joomla サイトを結合するための JFusion のセットアップ
    Web サイト上のフォーラムからのメッセージを表示したり、Joomla に戻るボタンを SMF に作成したりするための JFusion モジュール
    Joomla でフォーラムに参加するためのメニュー項目を作成し、ユーザー登録を SMF からサイトに転送する
    SMF フォーラムのインストール - JFusion コンポーネントを使用した Joomla 1.5 と Simple Machines フォーラムの統合
    Joomla の拡張機能 - Joomla の拡張機能とは何か、Joomla のコンポーネント、モジュール、プラグインをダウンロードする場所、インストールおよび削除する方法
    Joomla でブログ、カタログ、ポータルを作成するための K2 コンポーネント - 機能、インストール、Russification Joomla のフォト ギャラリー - パート 3 - Phoca Gallery コンポーネントを使用して Joomla 1.5 でギャラリーを作成する - カテゴリを追加し、フォト ギャラリーに画像をアップロードする
    ARTIO JoomSEF - Joomla で CNC (SEF) リンクとタイトルを設定し、この拡張機能を使用して 404 エラー ページを作成します
    Akeeba Backup (旧 JoomlaPack) - 2 回のクリックで Joomla サイトのバックアップを作成し、バックアップから復元します