{"id":35546624,"url":"https://github.com/pickles2/px2-px2dthelper","last_synced_at":"2026-01-20T17:59:18.709Z","repository":{"id":27804624,"uuid":"31293935","full_name":"pickles2/px2-px2dthelper","owner":"pickles2","description":null,"archived":false,"fork":false,"pushed_at":"2025-08-31T14:36:27.000Z","size":3818,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-08-31T16:23:02.201Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pickles2.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2015-02-25T02:45:08.000Z","updated_at":"2025-07-29T12:09:17.000Z","dependencies_parsed_at":"2023-01-14T07:31:48.434Z","dependency_job_id":"e6197f2b-37eb-40e2-ac25-98eb49bbd642","html_url":"https://github.com/pickles2/px2-px2dthelper","commit_stats":{"total_commits":384,"total_committers":1,"mean_commits":384.0,"dds":0.0,"last_synced_commit":"ba4c81a60ec0b03c4d33853e185d7c8edea87c91"},"previous_names":[],"tags_count":46,"template":false,"template_full_name":null,"purl":"pkg:github/pickles2/px2-px2dthelper","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pickles2%2Fpx2-px2dthelper","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pickles2%2Fpx2-px2dthelper/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pickles2%2Fpx2-px2dthelper/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pickles2%2Fpx2-px2dthelper/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pickles2","download_url":"https://codeload.github.com/pickles2/px2-px2dthelper/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pickles2%2Fpx2-px2dthelper/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28198686,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2026-01-04T02:00:06.065Z","response_time":58,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-01-04T06:02:13.543Z","updated_at":"2026-01-04T06:03:49.577Z","avatar_url":"https://github.com/pickles2.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"pickles2/px2-px2dthelper\n======================\n\nPickles 2 のプラグインです。Pickles 2 babycorn(Desktop Tool) やその他のCMSと連携させるためのAPIを提供します。\n\n\n## インストール - Install\n\n次の手順でインストールしてください。\n\n### Composer パッケージを読み込む。\n\n```bash\n$ composer require pickles2/px2-px2dthelper\n```\n\n### Pickles2 のコンフィグに追記する。\n```php\n\u003c?php\nreturn call_user_func( function(){\n\n\t/* 中略 */\n\n\t// funcs: Before content\n\t$conf-\u003efuncs-\u003ebefore_content = array(\n\t\t// PX=px2dthelper\n\t\t'tomk79\\pickles2\\px2dthelper\\main::register'\n\t);\n\n\t/* 中略 */\n\n\t// processor\n\t$conf-\u003efuncs-\u003eprocessor-\u003ehtml = array(\n\t\t// broccoli-receive-message スクリプトを挿入\n\t\t// (Optional)\n\t\t'tomk79\\pickles2\\px2dthelper\\broccoli_receive_message::apply('.json_encode( array(\n\t\t\t// 許可する接続元を指定\n\t\t\t'enabled_origin'=\u003earray(\n\t\t\t\t'http://127.0.0.1:8080',\n\t\t\t\t'http://127.0.0.1:8081',\n\t\t\t\t'http://127.0.0.1:8082',\n\t\t\t)\n\t\t) ).')'\n\t);\n\n\t/* 中略 */\n\n\treturn $conf;\n} );\n```\n\n## API\n\n### モジュールの CSS をビルドする\n\n```php\n/* CSSファイルに下記を記述 */\n\u003c?php\n// CSSのソースコードが返されます。\n// このコードには、画像などのリソースもdataスキーマ化した状態で含められます。\nprint (new \\tomk79\\pickles2\\px2dthelper\\main($px))-\u003edocument_modules()-\u003ebuild_css();\n?\u003e\n```\n\n### モジュールの JavaScript をビルドする\n\n```php\n// JavaScriptファイルに下記を記述\n\u003c?php\n// JavaScriptのソースコードが返されます。\n// スクリプト内から画像などのリソースを呼び出している場合、\n// このメソッドには、リンクを解決するなどの機能はありません。\n// 予め、出力後のパスを起点にパスが解決できるように作成してください。\nprint (new \\tomk79\\pickles2\\px2dthelper\\main($px))-\u003edocument_modules()-\u003ebuild_js();\n?\u003e\n```\n\n### HTMLにCSSとJavaScriptをロードする\n\n```php\n\u003c!DOCTYPE html\u003e\n\u003chtml\u003e\n\u003chead\u003e\n\u003ctitle\u003ePage Title\u003c/title\u003e\n\u003c?php\n// style要素、および script要素 が出力されます。\nprint (new \\tomk79\\pickles2\\px2dthelper\\main($px))-\u003edocument_modules()-\u003eload();\n?\u003e\n\u003c/head\u003e\n\u003cbody\u003e\n\t\u003ch1\u003ePage Title\u003c/h1\u003e\n\t\u003c!-- コンテンツ --\u003e\n\u003c/body\u003e\n\u003c/html\u003e\n```\n\n### Authorizer `$px-\u003eauthorizer` の初期化\n\n```php\n\\tomk79\\pickles2\\px2dthelper\\authorizer::initialize($px, 'member');\n```\n\n\n### PXコマンド\n\n#### PX=px2dthelper.version\n\n`px2-px2dthelper` のバージョン番号を取得します。\n\n```bash\n$ php .px_execute.php /?PX=px2dthelper.version\n```\n\n#### PX=px2dthelper.check_status\n\n`px2-px2dthelper` の状態情報を取得します。\n\n```bash\n$ php .px_execute.php /?PX=px2dthelper.check_status\n```\n\n#### PX=px2dthelper.find_page_content\n\nページのコンテンツファイルを探します。\n\n```bash\n$ php .px_execute.php /path/find/content.html?PX=px2dthelper.find_page_content\n```\n\n#### PX=px2dthelper.get.realpath_data_dir\n\n`$conf-\u003eplugins-\u003epx2dt-\u003eguieditor-\u003epath_data_dir` の解決された内部絶対パスを取得します。\n\n#### PX=px2dthelper.get.path_resource_dir\n\n`$conf-\u003eplugins-\u003epx2dt-\u003eguieditor-\u003epath_resource_dir` の解決されたパスを取得します。\n\n#### PX=px2dthelper.get.custom_fields\n\n`$conf-\u003eplugins-\u003epx2dt-\u003eguieditor-\u003ecustom_fields` の値を取得します。\n\n#### PX=px2dthelper.get.navigation_info\n\nナビゲーションシステムを生成するために必要な情報をまとめて取得します。\n\n```bash\n$ php .px_execute.php \"/?PX=px2dthelper.get.navigation_info\u0026filter=false\"\n```\n\n`filter` オプションは、 `$site-\u003eget_bros()` と `$site-\u003eget_children()` に渡されます。\n\n#### PX=px2dthelper.get.realpath_theme_collection_dir\n\nテーマコレクションディレクトリのパスを取得します。。\n\n```bash\n$ php .px_execute.php \"/?PX=px2dthelper.get.realpath_theme_collection_dir\"\n```\n\n#### PX=px2dthelper.get.all\n\nPickles 2 から複数の情報を一度に取得します。\n\n```bash\n$ php .px_execute.php \"/?PX=px2dthelper.get.all\u0026filter=false\u0026path=/index.html\"\n```\n\n`filter` オプションは、 `$site-\u003eget_bros()` と `$site-\u003eget_children()` に渡されます。\n\n#### PX=px2dthelper.check_editor_mode\n\nコンテンツの編集モードを取得します。\n\n```bash\n$ php .px_execute.php \"/?PX=px2dthelper.check_editor_mode\u0026path=/target/path.html\"\n```\n\n#### PX=px2dthelper.search_sitemap\n\nサイトマップ中のページを検索します。\n\n`limit` オプションは、検索結果の最大件数を指定します。デフォルトは 200件です。\n\n```bash\n$ php .px_execute.php \"/?PX=px2dthelper.search_sitemap\u0026keyword=HOME\u0026limit=10\"\n```\n\n#### PX=px2dthelper.sitemap.create\n\n新規サイトマップファイルを作成します。 パラメータ `filename` に、作成するサイトマップのファイル名(拡張子は含まない)を指定します。\n\n```bash\n$ php .px_execute.php \"/?PX=px2dthelper.sitemap.create\u0026filename=foobar\"\n```\n\n#### PX=px2dthelper.sitemap.delete\n\nサイトマップファイルを削除します。 パラメータ `filename` に、削除するサイトマップのファイル名(拡張子は含まない)を指定します。\n\n```bash\n$ php .px_execute.php \"/?PX=px2dthelper.sitemap.delete\u0026filename=foobar\"\n```\n\n#### PX=px2dthelper.document_modules.build_css\n\nCSSのソースコードが返されます。\n\n```bash\n$ php .px_execute.php /?PX=px2dthelper.document_modules.build_css\n```\n\n加えて、パラメータ `theme_id` を付与すると、テーマが定義するCSSのコードを返します。\n\n#### PX=px2dthelper.document_modules.build_js\n\nJavaScriptのソースコードが返されます。\n\n```bash\n$ php .px_execute.php /?PX=px2dthelper.document_modules.build_js\n```\n\n加えて、パラメータ `theme_id` を付与すると、テーマが定義するJavaScriptのコードを返します。\n\n#### PX=px2dthelper.document_modules.load\n\nCSSとJavaScriptをロードするHTMLソースコードが返されます。\n\n```bash\n$ php .px_execute.php /?PX=px2dthelper.document_modules.load\n```\n\n#### PX=px2dthelper.convert_table_excel2html\n\nCSV や Excel形式 で作られた表を元に、HTMLのテーブル要素を生成して出力します。\nパラメータ `path` には、 `*.csv`, `*.xls`, `*.xlsx` を指定できます。\n\n```bash\n$ php .px_execute.php \"/?PX=px2dthelper.convert_table_excel2html\u0026path=/path/to/sourcedata.xlsx\"\n```\n\n#### PX=px2dthelper.init_content\n\nコンテンツを初期化します。\n\n```bash\n$ php .px_execute.php \"/path/init/content.html?PX=px2dthelper.init_content\u0026editor_mode=html.gui\"\n```\n\nv2.0.12 以降、このAPIは、すでにコンテンツが存在する場合には、上書きせずにエラーを返すようになりました。\n`force` オプションが付加された場合は、 強制的に上書きします。\n\nv2.0.11 とそれ以前のバージョンでは、既存のコンテンツを上書きして初期化するのがデフォルトの挙動でした。\n\n```bash\n$ # forceオプションを付加した例\n$ php .px_execute.php \"/path/init/content.html?PX=px2dthelper.init_content\u0026editor_mode=html.gui\u0026force=1\"\n```\n\n#### PX=px2dthelper.config.parse\n\n設定ファイル(`config.php`)を解析し、解析できた値の一覧を返します。\n\n#### PX=px2dthelper.config.update\n\n設定ファイル(`config.php`)を解析し、解析できた値のうち任意の値を変更して上書きします。\n\n```bash\n$ php .px_execute.php \"/path/to/target/page_path.html?PX=px2dthelper.config.update\u0026base64_json=xxxxxxxxxxxx\"\n```\n\n変更したい値は、 `json` (JSON形式の文字列) または `base64_json` (JSON形式の文字列を Base64に変換した文字列) のいずれかにセットして渡します。\n\n```php\n$base64_json = base64_encode( json_encode( array(\n\t// config の項目で、上書きしたい情報をセットします。\n\t'values' =\u003e array(\n\t\t'name' =\u003e 'New Site Name',\n\t),\n\n\t// config の構造に合致しない設定項目は、`symbols` の中に分類されます。\n\t'symbols' =\u003e array(\n\t\t'theme_id' =\u003e 'new_theme_id', \n\t),\n) ) );\n```\n\n#### PX=px2dthelper.copy_content\n\nコンテンツを複製します。\n\n```bash\n$ php .px_execute.php \"/path/copy/to.html?PX=px2dthelper.copy_content\u0026from=/path/copy/from.html\"\n```\n\nまたは、\n\n```bash\n$ php .px_execute.php \"/?PX=px2dthelper.copy_content\u0026from=/path/copy/from.html\u0026to=/path/copy/to.html\"\n```\n\nv2.0.12 以降、このAPIは、すでにコンテンツが存在する場合には、上書きせずにエラーを返すようになりました。\n`force` オプションが付加された場合は、 強制的に上書きします。\n\nv2.0.11 とそれ以前のバージョンでは、既存のコンテンツを上書きして初期化するのがデフォルトの挙動でした。\n\n```bash\n$ # forceオプションを付加した例\n$ php .px_execute.php \"/?PX=px2dthelper.copy_content\u0026from=/path/copy/from.html\u0026to=/path/copy/to.html\u0026force=1\"\n```\n\n\n#### PX=px2dthelper.change_content_editor_mode\n\nコンテンツの編集モードを変更します。\n\n```bash\n$ php .px_execute.php \"/path/to/target/page_path.html?PX=px2dthelper.change_content_editor_mode\u0026editor_mode=html.gui\"\n```\n\n#### PX=px2dthelper.plugins.get_plugin_options\n\nプラグインオプションを取得します。\n\n```bash\n$ php .px_execute.php \"/path/to/target/page_path.html?PX=px2dthelper.plugins.get_plugin_options\u0026func_div=processor.html\u0026plugin_name=namespace\\\\classname::funcname\"\n```\n\n#### PX=px2dthelper.publish_single_page\n\n指定されたページを単体でパブリッシュします。\nページ固有のリソースディレクトリが同時にパブリッシュされます。\n\n```bash\n$ php .px_execute.php \"/path/to/target/page_path.html?PX=px2dthelper.publish_single_page\"\n```\n\n#### PX=px2dthelper.packages.get_path_composer_root_dir\n\n`composer.json` が置かれているディレクトリのパスを取得する。\n\n#### PX=px2dthelper.packages.get_path_npm_root_dir\n\n`package.json` が置かれているディレクトリのパスを取得する。\n\n#### PX=px2dthelper.packages.get_package_list\n\nパッケージの一覧を取得する。\n\n```bash\n$ php .px_execute.php \"/path/to/target/page_path.html?PX=px2dthelper.packages.get_package_list\"\n```\n\n#### PX=px2dthelper.px2ce.gpi\n#### PX=px2dthelper.px2me.gpi\n#### PX=px2dthelper.px2te.gpi\n\nそれぞれ、Pickles 2 Contents Editor、Pickles 2 Module Editor、Pickles 2 Theme Editor  のGPIを呼び出します。\n\n次のオプションを指定できます。\n\n- `appMode` : `web` (デフォルト) または `desktop`\n- `data` : GPIに渡される引数。 JSON形式のテキストを base64エンコードして指定します。\n- `data_filename` : `data` の代わりに、JSONをファイルに保存して受け渡しします。ファイルは `px-files/_sys/ram/data/` に置き、そのファイル名を指定してください。\n\n#### PX=px2dthelper.px2ce.client_resources\n#### PX=px2dthelper.px2me.client_resources\n#### PX=px2dthelper.px2te.client_resources\n\nそれぞれ、 Pickles 2 Contents Editor、Pickles 2 Module Editor、Pickles 2 Theme Editor の、クライアントサイドで読み込むべきリソースの一覧を返します。\n\nデフォルトでは、サーバー内部の絶対パスを返します。 `dist` パラメータにサーバー内部のディレクトリパスを渡すと、指定のディレクトリ内にコピーを作成し、そこからの相対パスを返すようになります。\n\n#### PX=px2dthelper.custom_console_extensions\n#### PX=px2dthelper.custom_console_extensions.XXXX.client_resources\n#### PX=px2dthelper.custom_console_extensions.XXXX.gpi\n#### PX=px2dthelper.custom_console_extensions_async_run\n\n`$conf-\u003eplugins-\u003epx2dt-\u003ecustomConsoleExtensions` に登録された拡張機能へアクセスするAPIを提供します。\n第3引数の `XXXX` には、 Custom Console Extensions に登録したID(添字)を指定します。省略時には、登録されている拡張機能の一覧を返します。\n\n#### PX=px2dthelper.get.path_theme_collection_dir\n\n#### PX=px2dthelper.get.list_unassigned_contents\n\n#### PX=px2dthelper.get.list_gui_editor_contents\n\n#### PX=px2dthelper.get.list_all_contents\n\n#### PX=px2dthelper.page.add_page_info_raw\n\n#### PX=px2dthelper.page.get_page_info_raw\n\n#### PX=px2dthelper.page.update_page_info_raw\n\n#### PX=px2dthelper.page.move_page_info_raw\n\n#### PX=px2dthelper.page.delete_page_info_raw\n\n#### PX=px2dthelper.content.delete\n\n#### PX=px2dthelper.contents_template.get_list\n\n#### PX=px2dthelper.sitemap.filelist\n\n#### PX=px2dthelper.sitemap.download\n\n#### PX=px2dthelper.sitemap.upload\n\n#### PX=px2dthelper.sitemap.csv2xlsx\n\n#### PX=px2dthelper.sitemap.xlsx2csv\n\n#### PX=px2dthelper.authorizer.is_authorized.XXXX\n\n### コマンドラインオプション\n\n#### --role\n\nロール名。\n\n\n## 更新履歴 - Change log\n\n### pickles2/px2-px2dthelper v2.3.2 (2025年9月24日)\n\n- サーバーオリジンの取得時に、ポート番号が含まれない場合がある問題を修正。\n- 日本語でハードコーディングされていたエラーメッセージなどを英語に置き換えた。\n\n### pickles2/px2-px2dthelper v2.3.1 (2025年7月29日)\n\n- `PX=px2dthelper.content.move` で、変換対象のコンテンツにコードブロックやコメントブロックを含む場合の処理を改善した。\n- `PX=px2dthelper.content.move` で、変換対象のリンクが クエリパラメータ(`?〜〜`)やハッシュ(`#〜〜`)を含む場合に、正しく変換されない問題を修正した。\n- `PX=px2dthelper.content.move` で、変換対象のリンクがスラッシュで終わっていて、変換後のリンクのファイル名を省略できる場合に、省略するようになった。\n- 標準コンテンツテンプレートに `kflow` を追加した。\n- `PX=px2dthelper.config.parse` と `PX=px2dthelper.config.update` で、 `$conf-\u003edefault_lang` を扱えるようになった。\n\n### pickles2/px2-px2dthelper v2.3.0 (2025年7月12日)\n\n- モジュール編集機能のサポートを追加した。\n- ヘッダー情報の送信に関する改善。\n- `PX=px2dthelper.config.update` の反映が遅延する場合がある問題を修正。\n\n### pickles2/px2-px2dthelper v2.2.8 (2025年5月9日)\n\n- SCSSのコンパイルで、 `@import` のパスを処理できない場合がある不具合を修正。\n- PXコマンド `PX=px2dthelper.get.navigation_info` が、`top_page_info`, `global_menu`, `shoulder_menu`, `category_top`, `category_sub_menu` も返すようになった。\n\n### pickles2/px2-px2dthelper v2.2.7 (2025年4月3日)\n\n- `PX=px2dthelper.px2ce` で、 `theme_id`、 `layout_id` オプションに対応した。\n- `cceAgent.gpi()` が、コールバックの第2引数にエラー情報を返すようになった。\n- `cceAgent.editThemeLayout()` の引数に、`themeId`, `layoutId` を追加した。\n- `cceAgent.appearance()` を追加した。\n- その他、内部コードの修正など。\n\n### pickles2/px2-px2dthelper v2.2.6 (2025年2月12日)\n\n- `PX=px2dthelper.check_editor_mode` で、 `md` 以外の2重拡張子を検出できない問題を修正した。\n\n### pickles2/px2-px2dthelper v2.2.5 (2024年11月1日)\n\n- `LANG`、`lang` パラメータで、言語切替ができるようになった。\n- コンテンツテンプレートが多言語化に対応できるようになった。\n- コンテンツテンプレートに、ディレクトリではないファイルが直接配置された場合に、無視するようになった。\n- サイトマップのバリデーションで、 `path` の末尾がダイナミックパスの場合にエラー扱いとなる不具合を修正した。\n\n### pickles2/px2-px2dthelper v2.2.4 (2024年9月10日)\n\n- Broccoli(ブロックエディタ)の編集時に生成するプレビューから、scriptなどいくつかの要素を除去するようになった。\n\n### pickles2/px2-px2dthelper v2.2.3 (2024年7月21日)\n\n- `PX=px2dthelper.get.list_gui_editor_contents` を追加。\n- `PX=px2dthelper.get.list_all_contents` を追加。\n- クライアントサイド `cceAgent` に `pxCmd()` を追加。\n\n### pickles2/px2-px2dthelper v2.2.2 (2024年2月18日)\n\n- コンテンツテンプレートのデフォルトのパスを `px-files/contents_templates/` とした。\n- コンテンツテンプレートにサムネイルを含められるようになった。\n\n### pickles2/px2-px2dthelper v2.2.1 (2023年11月13日)\n\n- px2ce, px2me, px2te の `appearance` オプションに対応した。\n\n### pickles2/px2-px2dthelper v2.2.0 (2023年9月24日)\n\n- 認可機能 `$px-\u003eauthorizer` を追加。\n- `PX=px2dthelper.authorizer.is_authorized.XXXX` を追加。\n- `PX=px2dthelper.get.list_unassigned_contents` が、ブログマップに対応した。\n- `PX=px2dthelper.get.list_unassigned_contents` が、除外(ignore)されたパスをリストしないようになった。\n- カスタムコンソール機能拡張に `capability` の設定を追加。\n\n### pickles2/px2-px2dthelper v2.1.11 (2023年8月29日)\n\n- `PX=px2dthelper.content.move` が失敗することがある不具合を修正。\n- `PX=px2dthelper.content.move` によるコンテンツ移動時、被リンクの張替え処理を、除外されたディレクトリで実行しないようになった。\n- ページ情報編集のバリデーション機能を改善した。\n- `PX=px2dthelper.contents_template.get_list` を追加。\n- `PX=px2dthelper.init_content` が、コンテンツテンプレートからの初期化に対応した。\n- その他、内部コードの修正など。\n\n### pickles2/px2-px2dthelper v2.1.10 (2023年5月1日)\n\n- `configParser` の解析と置換で、エスケープ処理を改善し、使える文字が増えた。\n- `configParser` で、 `$conf-\u003etagline` の解析と置換ができるようになった。\n\n### pickles2/px2-px2dthelper v2.1.9 (2023年4月22日)\n\n- クライアントサイド `cceAgent` に `editContent()`、 `editThemeLayout()`、 `openInBrowser()` を追加。\n\n### pickles2/px2-px2dthelper v2.1.8 (2023年3月11日)\n\n- 重複するエラー表示をまとめるようになった。\n- `data-broccoli-receive-message` は、broccoli編集時にのみ挿入されるようになった。\n- Broccoli でのテーマ編集モードへの対応処理を改善した。\n- その他、内部コードの修正など。\n\n### pickles2/px2-px2dthelper v2.1.7 (2023年2月11日)\n\n- `PX=px2dthelper.config.parse`, `PX=px2dthelper.config.update` で、 `$conf-\u003ecopyright` を扱えるようになった。\n- その他、内部コードの修正など。\n\n### pickles2/px2-px2dthelper v2.1.6 (2022年12月29日)\n\n- `PX=px2dthelper.get.list_unassigned_contents` を追加。\n- px2ce, px2me, px2te, CCE で、Web SAPI からクライアント資材のパスの指定をできないようにした。\n- その他、内部コードの修正など。\n\n### pickles2/px2-px2dthelper v2.1.5 (2022年11月3日)\n\n- `PX=px2dthelper.page.move_page_info_raw` を追加。\n- `PX=px2dthelper.content.move` を追加。\n- `PX=px2dthelper.page.add_page_info_raw` のバリデーションを改善。\n- `PX=px2dthelper.page.update_page_info_raw` で、`path`、`content`、`logical_path` が変更された場合、影響範囲へ反映するようになった。\n- `PX=px2dthelper.page.delete_page_info_raw` で、削除対象のページに子ページがある場合に、パンくずを繰り上げるようになった。\n- `tomk79\\pickles2\\px2dthelper\\utils::get_server_origin()` を追加。\n- 内部コードの修正など。\n\n### pickles2/px2-px2dthelper v2.1.4 (2022年7月20日)\n\n- `module.js` の安定性に関する修正。\n- 内部コードの修正、ファイルの整理など。\n\n### pickles2/px2-px2dthelper v2.1.3 (2022年6月5日)\n\n- サイトマップ変換に関する不具合の修正。\n\n### pickles2/px2-px2dthelper v2.1.2 (2022年5月6日)\n\n- `PX=px2dthelper.sitemap.upload` が、ファイルの保存に失敗する場合がある不具合を修正。\n- `PX=px2dthelper.page.add_page_info_raw` を追加。\n- `PX=px2dthelper.page.get_page_info_raw` を追加。\n- `PX=px2dthelper.page.update_page_info_raw` を追加。\n- `PX=px2dthelper.page.delete_page_info_raw` を追加。\n- `PX=px2dthelper.content.delete` を追加。\n- その他いくつかの細かい修正。\n\n### pickles2/px2-px2dthelper v2.1.1 (2022年5月2日)\n\n- `PX=px2dthelper.sitemap.filelist` を追加。\n- `PX=px2dthelper.sitemap.download` を追加。\n- `PX=px2dthelper.sitemap.upload` を追加。\n- `PX=px2dthelper.sitemap.csv2xlsx` を追加。\n- `PX=px2dthelper.sitemap.xlsx2csv` を追加。\n- Px2CE, Px2TE, Px2ME に、 `$conf-\u003ecommands-\u003ephp` の設定が伝播されない不具合を修正。\n\n### pickles2/px2-px2dthelper v2.1.0 (2022年1月8日)\n\n- サポートするPHPのバージョンを `\u003e=7.3.0` に変更。\n- PHP 8.1 に対応した。\n\n### pickles2/px2-px2dthelper v2.0.22 (2022年1月4日)\n\n- `$conf-\u003eplugins-\u003epx2dt-\u003eenable_document_modules_cache` を追加。Broccoli関連リソースのビルドをキャッシュするか設定できるようになった。デフォルトは無効。\n- Pickles 2 Contents Editor、 Pickles 2 Module Editor、 Pickles 2 Theme Editor の初期化に関する不具合を修正。\n\n### pickles2/px2-px2dthelper v2.0.21 (2021年8月21日)\n\n- 同梱のプラグインが、より直接的な表現で設定できるようになった。\n- パフォーマンスに関する改善。\n\n### pickles2/px2-px2dthelper v2.0.20 (2021年7月10日)\n\n- 拡張field設定のフロントエンドリソースが複数ある場合に処理できない不具合を修正。\n- その他の細かい内部コード修正。\n\n### pickles2/px2-px2dthelper v2.0.19 (2021年4月24日)\n\n- `scssphp/scssphp` への対応を追加。\n- その他の細かい内部コード修正。\n\n### pickles2/px2-px2dthelper v2.0.18 (2021年2月21日)\n\n- ホームディレクトリ、およびテーマコレクションディレクトリが、プレビューのドキュメントルート外に置かれている場合に、正しいパスを返せない不具合を修正。\n- APIが返すパスの、Windowsパスに関する環境依存を修正。\n\n### pickles2/px2-px2dthelper v2.0.17 (2021年2月21日)\n\n- Update: Broccoli v0.4.x\n- `PX=px2dthelper.px2te.gpi`, `PX=px2dthelper.px2te.client_resources` を追加。\n- カスタムコンソール機能拡張を追加。 `PX=px2dthelper.custom_console_extensions` を追加。\n- `PX=px2dthelper.get.all` の返却値に `custom_console_extensions` を追加。\n- `PX=px2dthelper.get.path_theme_collection_dir` を追加。\n- `PX=px2dthelper.get.all` の返却値に `path_theme_collection_dir` を追加。\n- `PX=px2dthelper.get.all` の返却値に `path_homedir` を追加。\n\n### pickles2/px2-px2dthelper v2.0.16 (2020年10月17日)\n\n- Firefox で、 Broccoliエディタの初期化が完了できない問題に対する修正。\n- その他の細かい内部コード修正。\n\n### pickles2/px2-px2dthelper v2.0.15 (2020年6月21日)\n\n- 外部依存パッケージのバージョンを更新。\n\n### pickles2/px2-px2dthelper v2.0.14 (2020年1月2日)\n\n- PHP 7.4 に対応した。\n\n### pickles2/px2-px2dthelper v2.0.13 (2019年9月4日)\n\n- Broccoli編集画面を停止させる外部のスクリプトを無効化するようにした。\n\n### pickles2/px2-px2dthelper v2.0.12 (2019年6月8日)\n\n- PXコマンド `PX=px2dthelper.config.parse` と `PX=px2dthelper.config.update` を追加。\n- PXコマンド `PX=px2dthelper.sitemap.create` と `PX=px2dthelper.sitemap.delete` を追加。\n- `PX=px2dthelper.init_content`、`PX=px2dthelper.copy_content` は、コンテンツがすでに存在する場合には、上書きせずエラーを出すように変更された。そのかわり、 `force` オプションを追加し、強制的に上書きできるようにした。\n- `PX=px2dthelper.get.all` の結果に `page_originated_csv` が追加された。(`pickles2/px-fw-2.x v2.0.40` 以上が必要)\n- `PX=px2dthelper.search_sitemap` に `limit` オプションを追加。 デフォルトは 200件が上限となるようになった。\n- `document_modules` のビルド結果をキャッシュするようになった。\n\n### pickles2/px2-px2dthelper v2.0.11 (2018年11月8日)\n\n- リソースパスに関する設定(`$conf-\u003epath_files`, `$conf-\u003eplugins-\u003epx2dt-\u003eguieditor-\u003epath_resource_dir`, `$conf-\u003eplugins-\u003epx2dt-\u003eguieditor-\u003epath_data_dir`)にコールバック関数を使用できない問題を修正。\n\n### pickles2/px2-px2dthelper v2.0.10 (2018年10月26日)\n\n- Windows環境で、 `PX=px2dthelper.publish_single_page` を実行時に、リソースディレクトリがパブリッシュ対象に含まれない不具合を修正。\n\n### pickles2/px2-px2dthelper v2.0.9 (2018年9月25日)\n\n- PXコマンド `PX=px2dthelper.publish_single_page` を追加。\n- Pickles 2 Contents Editor, および Pickles 2 Module Editor のAPIで、APIを正常に呼び出せない場合がある問題を修正。\n\n### pickles2/px2-px2dthelper v2.0.8 (2018年8月16日)\n\n- `broccoli-html-editor` のAPIを追加。\n- Pickles 2 Contents Editor のAPIを追加。\n- Pickles 2 Module Editor のAPIを追加。\n\n### pickles2/px2-px2dthelper v2.0.7 (2018年2月28日)\n\n- 依存ライブラリ `michelf/php-markdown`, `leafo/scssphp` のバージョン制約を緩和。 (`pickles2/px-fw-2.x` の更新に合わせられるように)\n- `$conf-\u003epx2dtconfig` が連想配列で設定されている場合に、正規化処理が適切に反映されない不具合を修正。\n\n### pickles2/px2-px2dthelper v2.0.6 (2017年9月14日)\n\n- PXコマンド `PX=px2dthelper.plugins.get_plugin_options` を追加。\n- PXコマンド `PX=px2dthelper.packages.get_package_list` を追加。\n- PXコマンド `PX=px2dthelper.packages.get_path_composer_root_dir` を追加。\n- PXコマンド `PX=px2dthelper.packages.get_path_npm_root_dir` を追加。\n- PXコマンド `PX=px2dthelper.get.realpath_theme_collection_dir` を追加。\n- PXコマンド `PX=px2dthelper.get.all`, `PX=px2dthelper.check_editor_mode` に `path` オプションを追加。\n- PXコマンド `PX=px2dthelper.get.all` の結果に `path_type`, `realpath_theme_collection_dir`, `packages-\u003epath_composer_root_dir`, `packages-\u003epath_npm_root_dir`, `packages-\u003epackage_list` を追加。\n- PXコマンド `PX=px2dthelper.get.all` で、`path` オプションに id を指定してエイリアスページの情報を取得できるようになった。\n- `$conf-\u003eplugins-\u003epx2dt-\u003epath_module_templates_dir` 設定に対応。\n- PXコマンド `PX=px2dthelper.document_modules.build_css` と `PX=px2dthelper.document_modules.build_js` が、テーマのモジュールに対応。\n\n### pickles2/px2-px2dthelper v2.0.5 (2017年5月30日)\n\n- `broccoli-receive-message` スクリプトを挿入する新しい `processor` を追加。\n- PXコマンド `PX=px2dthelper.search_sitemap` を追加。\n- `PX=px2dthelper.copy_content` で、 `$from` と `$to` が同じコンテンツを指す場合にコンテンツファイルが消えてしまう不具合を修正。\n\n### pickles2/px2-px2dthelper v2.0.4 (2017年4月20日)\n\n- PXコマンド `PX=px2dthelper.get.navigation_info` を追加。\n- PXコマンド `PX=px2dthelper.get.all` に `filter` オプションを追加。\n- `PX=px2dthelper.get.all` に含まれる `path_files`, `realpath_files` が、不正な値を返すことがある不具合を修正。\n\n### pickles2/px2-px2dthelper v2.0.3 (2017年2月6日)\n\n- PXコマンド `PX=px2dthelper.get.all` を追加。\n- `paths_module_template` を絶対パスに整形してから返すようにした。\n- `$site` が利用できない場合に異常終了しないようにした。\n\n### pickles2/px2-px2dthelper v2.0.2 (2017年1月18日)\n\n- CSS, JS のビルド結果を整形した。\n\n### pickles2/px2-px2dthelper v2.0.1 (2016年10月17日)\n\n- PXコマンド `PX=px2dthelper.find_page_content` を追加。\n- PXコマンド `PX=px2dthelper.get.realpath_data_dir` を追加。\n- PXコマンド `PX=px2dthelper.get.path_resource_dir` を追加。\n- PXコマンド `PX=px2dthelper.get.custom_fields` を追加。\n- PXコマンド `PX=px2dthelper.check_editor_mode` を追加。\n- PXコマンド `PX=px2dthelper.init_content` を追加。\n- PXコマンド `PX=px2dthelper.change_content_editor_mode` を追加。\n- PXコマンド `PX=px2dthelper.check_status` を追加。\n- `PX=px2dthelper.copy_content` の コピー先の指定方法を追加。 `/path/copy/to.html?PX=〜〜` のようにも指定できるようになった。\n\n### pickles2/px2-px2dthelper v2.0.0 (2016年9月15日)\n\n- initial release.\n\n\n## for Developer\n\n### テスト - Test\n\n```\n$ ./vendor/phpunit/phpunit/phpunit\n```\n\n### ドキュメント出力 - phpDocumentor\n\n```\n$ wget https://phpdoc.org/phpDocumentor.phar;\n$ composer run-script documentation;\n```\n\n\n## ライセンス - License\n\nCopyright (c)2001-2024 Tomoya Koyanagi, and Pickles Project\u003cbr /\u003e\nMIT License https://opensource.org/licenses/mit-license.php\n\n\n## 作者 - Author\n\n- Tomoya Koyanagi \u003ctomk79@gmail.com\u003e\n- website: \u003chttps://www.pxt.jp/\u003e\n- Twitter: @tomk79 \u003chttps://twitter.com/tomk79/\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpickles2%2Fpx2-px2dthelper","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpickles2%2Fpx2-px2dthelper","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpickles2%2Fpx2-px2dthelper/lists"}