ホームページ > バックエンド開発 > PHPチュートリアル > Building OctuneCMSプラグイン:Google Analytics

Building OctuneCMSプラグイン:Google Analytics

Joseph Gordon-Levitt
リリース: 2025-02-19 09:59:09
オリジナル
158 人が閲覧しました

OctureCMSプラグインの開発:Google Analyticsの例

OctureCMSは急速に成長しているコンテンツ管理システム(CMS)であり、すべてのCMSプラットフォームと同様に、その機能はプラグインによって強化されています。この記事では、Googleアナリティクスの統合を実用的な例として使用して、TurteCMSプラグインを作成するための基礎ガイドを提供します。

Building OctoberCMS Plugins: Google Analytics

重要な概念:

    プラグインを介した10月の拡張性により、Google Analyticsトラッキングの追加などのシームレスな統合が可能になります。
  • コマンドラインインターフェイスは、プラグインの作成と管理を簡素化し、CMS内のグラフィカルインターフェイスを補完します(System> Updates)。
  • コンポーネントは、ユーザーインタラクションに不可欠です。コマンドラインを介して作成されるか、手動で作成されているため、専用の「コンポーネント」フォルダーが必要です。 ユーザー入力の設定フォームの作成(Google Analytics Tracking IDなど)、コンポーネント内で使用するこれらの設定を取得するなど、
  • 広範なカスタマイズが可能です。
  • プロジェクトの概要:
コンポーネントタグを使用してGoogleアナリティクストラッキングを統合するプラグインを構築します。 プラグインの設定で追跡IDを構成した後、トラッキングを有効にするためにコンポーネントタグ(

)をページまたはパルティアルに挿入します。 完全なコードはgithubで利用できます。

プラグインマネジメント:

{% component 'gaCode' %}

10月のプラグインは、ルートディレクトリの

フォルダーにあります。 管理は介して処理されます:

system>更新:pluginsこのページでは、プロジェクトを添付し(10月のアカウントが必要)、マーケットプラグインの追加、ウェブサイトの更新が可能です。

    コマンドライン:コマンドラインを使用してプラグインをインストールします(ただし、Webサイトでプラグイン名を見つける必要があります)。 コマンド形式(執筆時点で)には通常、
  • が含まれます。
  • プラグインの作成: Author.PluginNameプラグインの作成が合理化されています:
    • マニュアル方法:ディレクトリ内に新しいフォルダーを作成します。フォルダー名は一意の名前空間として機能します(競合を避けるために、10月のWebサイトに名前空間を登録)。 この例では、pluginsを使用します。 内部では、RAFIE.GoogleAnalyticsCodeファイルを作成します。Plugin.php
    • 足場(コマンドライン):コマンドを使用を使用します。これにより、バージョンコントロール用のphp artisan create:plugin RAFIE.GoogleAnalyticsCodeファイルを含むuploadsフォルダーを含む、必要なファイルとフォルダーが自動的に生成されます。 version.yaml
    ファイルの

    メソッド(オーバーライドPlugin.php)はプラグインを定義します:pluginDetails() SystemClassesPluginBase

    プラグインが表示されない場合は、「更新の確認」をクリックしてリストを更新します。 コンポーネントの使用
    public function pluginDetails() {
        return [
            'name'        => 'Google Analytics Code',
            'description' => 'Insert Google Analytics tracking code into your pages',
            'author'      => 'RAFIE Younes',
            'icon'        => 'icon-bar-chart-o'
        ];
    }
    ログイン後にコピー

    >

    コンポーネントでページとのやり取りを有効にします。 手動で(フォルダー内)またはコマンドラインを介して作成します:

    components

    php artisan create:component RAFIE.GoogleAnalyticsCode GoogleAnalytics
    ログイン後にコピー

    Building OctoberCMS Plugins: Google Analytics メソッド(オーバーライド

    )は、管理ダッシュボードのコンポーネントの詳細を定義します。

    'scomponentDetails()メソッドでコンポーネントを登録します:CmsClassesComponentBase Plugin.php registerComponents()コンポーネントは最初に

    public function registerComponents() {
        return [
            'RAFIE\GoogleAnalyticsCode\Components\GoogleAnalytics' => 'gaCode'
        ];
    }
    ログイン後にコピー
    をレンダリングします

    これをGoogle Analyticsトラッキングコードに置き換えます:default.htm

    <p>></p>This is the default markup for component GoogleAnalytics>
    <small>></small>You can delete this file if you want>
    ログイン後にコピー
    テーマに応じて、スクリプトをページの最後に理想的に配置する必要があることを忘れないでください。

    コンポーネントのプロパティと設定:
    (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
        (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
            m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
    })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
    
    ga('create', '{{ code }}', 'auto');
    ga('send', 'pageview');
    ログイン後にコピー

    トラッキングIDをハードコードする代わりに、コンポーネントプロパティを使用します:

    を使用してプロパティを定義します

    {% component 'gaCode' code='UA-12345678-1' %}
    ログイン後にコピー

    を使用して、値をページに渡す:defineProperties()

    public function defineProperties() {
        return [
            'code' => [
                'title'             => 'Google Analytics tracking code',
                'description'       => 'Your Google Analytics tracking code',
                'default'           => '',
                'type'              => 'string',
                'validationPattern' => '^UA-\d{4,9}-\d{1,4}$',
                'validationMessage' => 'Invalid tracking code',
                'placeholder'       => 'UA-XXXXXXX'
            ]
        ];
    }
    ログイン後にコピー
    よりユーザーフレンドリーなアプローチについては、プラグインの設定を使用してください:

    onRender()

    public function onRender() {
        $this->page['code'] = $this->property('code');
    }
    ログイン後にコピー

    create

    Building OctoberCMS Plugins: Google Analytics

    create

    models/GoogleAnalyticsSettings.php

    class GoogleAnalyticsSettings extends Model {
        public $implement = ['System.Behaviors.SettingsModel'];
        public $settingsCode = 'rafie_google_analytics_code';
        public $settingsFields = 'fields.yaml';
    }
    ログイン後にコピー

    models/fields.yamlの登録設定

    fields:
      code:
        label: Your Google Analytics ID
        placeholder: UA-XXXXXXXX-X
    ログイン後にコピー

    Plugin.php

    public function registerSettings() {
        return [
            'settings' => [
                'label'       => 'Google Analytics Code',
                'description' => 'Manage Google Analytics Settings',
                'icon'        => 'icon-bar-chart-o',
                'class'       => 'RAFIE\GoogleAnalyticsCode\Models\GoogleAnalyticsSettings',
                'order'       => 1
            ]
        ];
    }
    ログイン後にコピー

    で設定を取得します Building OctoberCMS Plugins: Google Analytics

    結論:onRender()

    public function onRender() {
        $settings = GoogleAnalyticsSettings::instance();
        $this->page['code'] = $settings->code;
    }
    ログイン後にコピー
    OctureCMSは、堅牢で柔軟なプラグイン開発システムを提供します。 この例は、核となる原則を示しています。ソースコードとコミュニティリソースのさらなる調査により、理解が向上します。

    よくある質問(FAQS):(提供されたFAQはすでに十分に構成されており、包括的です。変更は必要ありません。

以上がBuilding OctuneCMSプラグイン:Google Analyticsの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート