WP-DB-テーブルエディター

WP-DB-テーブルエディター | Russ Tyndall @ Acceleration.net

説明

これは、Excelのような直接編集を可能にするWordPressプラグインです。
WordPressデータベースのテーブル。目標は、有用なものを提供することです。
シンプルで柔軟なデータベーステーブル管理画面。
それはサポートします:

管理画面ごとに1つのテーブル、必要な数の管理画面

これらは、新しい「DBテーブルエディタ」メニュー項目の下に整理されています

SlickGridを使用したインターフェイスのようなスプレッドシートに優れています
結果のフィルタリングと並べ替え
レコードの追加、編集、削除
カスタムボタンの拡張性
表示および編集するためのインターフェースごとのカスタム権限
(デフォルト:edit_others_posts)

指定されていない場合、編集はデフォルトで表示と同じ権限になります

フィルタリングされたグリッドのCSVエクスポート
カスタム主キー名(ただし、単一の値/列である必要があります)

その場でインターフェースを追加する
データベーステーブルエディタを検索しても見つからない場合は、
一致するdbte_create_ $ tblという名前の関数があります。
その関数は、dbteインスタンスを返すことを期待しています。これは便利です
テーブルエディタのデータがすべて揃っていない可能性がある状況
状況(例:すべてのページにメンバーIDがあるわけではないので、
その特定のページ)。
プラグインからのインターフェースの追加
プラグインからインターフェースを追加する必要がある場合は、
デフォルトよりも低い優先度のadmin_menuアクション。
例:add_action( ‘admin_menu’、 ‘my_load_tables’、-10);
my_load_tables関数内に、すべての
add_db_table_editorの呼び出し
カスタムボタン
ボタンは、関数をに押し込むことで作成できます
DBTableEditor.extraButtons。これらのそれぞれは滑らかなグリッドです
rowButtonFormatterであり、htmlの文字列を返す必要があります。
例えば:
out + = fn(row、cell、value、columnDef、dataContext);
ボタンの列幅は、次の設定で設定できます。
ready関数が呼び出される前のDBTableEditor.buttonColumnWidth
フック/アクション

db-table-editor_enqueue_scriptsは、呼び出されるアクションです。
すべてのプラグインスクリプトをエンキューした後、jsFileをエンキューする前
(存在する場合)
関数dbTableEditorScripts(){
wp_register_script( ‘employee-table-extensions-js’、
get_stylesheet_directory_uri()。 ‘/ employee-table.js’、
array( ‘db-table-editor-js’));
}
add_action( ‘db-table-editor_enqueue_scripts’、 ‘dbTableEditorScripts’);

dbte_row_deleted、dbte_row_updated、dbte_row_inserted
行が削除、更新、または挿入された後に呼び出されますパス
`

add_action( ‘dbte_row_deleted’、 ‘my_dbte_row_deleted’、10、2);
関数my_dbte_row_deleted($ currentTable、$ idRemoved){
//物事を行う
}
add_action( ‘dbte_row_updated’、 ‘my_dbte_row_upserted’、10、4);
add_action( ‘dbte_row_inserted’、 ‘my_dbte_row_upserted’、10、4);
関数my_dbte_row_upserted($ currentTable、$ values、$ columns、$ indexedModified){
//物事を行う
}
`

ショートコード
ショートコードを使用して、ワードプレスにdbteインターフェースを含めることができます
ページ。注意してご使用ください。
[dbte id = table-editor-id] –(idのデフォルトはtable)
警告

ショートコードを使用して、編集可能なテーブルエディタを公開画面に配置しないでください。

トラブルシューティング
サポートの質問/オープントラブルチケットをお気軽に

https://wordpress.org/support/plugin/wp-db-table-editor
https://github.com/AccelerationNet/wp-db-table-editor/issues

高度な例
テーブルエディタのカスタムJavascriptとボタン
参照:examples / custom-buttons-and-js.php
examples / custom-buttons.js
レポートページにカスタムJavaScriptを追加する方法を示し、カスタムを追加します
グリッド上のロードボタン
CF7DB送信プラグインの統合
参照:examples / cf7dbsubmit_integration.php
これは完全に実行可能な例ではありませんが、

動作中のcf7dbsubmitプラグイン
カスタム保存削除フック
このプラグインを使用したカスタムの複雑なSQLビルド
特定のフィールドの編集に関する通知の送信

cf7dbsubmitは、データを次の「ハッシュテーブル」形式で保存します。
フォーム、submit_time、field_name、field_value
しかし、私たちはこれを各分野のより優れたファッションで提示したいと思います
スプレッドシートの列と各行は異なる提出物です
寄稿者と感謝

bobbysmith007 / Acceleration.net –プラグインの主要な開発者
nikomuse –i18nサポート

インストール

これは、すべてのワードプレスプラグインと同じ方法で

インストール

されます。

解凍したプラグインディレクトリをWordPressの

インストール

にドロップします。
wp-content / plugins / wp-db-table-editor

WordPress管理>「プラグイン」メニューからプラグインをアクティブ化する

インターフェースの追加
DB-Table Editorインターフェイスは、を呼び出すことによって追加されます。
テーマのfunctions.phpファイルのadd_db_table_editor関数。
これは、wp_parse_argsスタイルの引数をサポートします。

タイトル:画面のH1とメニューに表示されるもの

例:title => “マイ製品レポートページ”

テーブル:表示/編集したいテーブル

例:table => “wp_my_custom_table”

id:管理インターフェースID(デフォルトはテーブル)

例:id => “custom_table_interface_1”

id_column:行のIDを指定する各行の列

例:id_column => “id”

dataFn:表示するデータを返す関数/
編集済み、デフォルトでは{table}から*を選択します。これはARRAY_Nを返すはずです
wpdb-> get_resultsを介して。または、DBTE_DataTableを返す場合もあります。
dataFnは、arguemnts配列を使用してadd_db_table_editorに呼び出されます。

例:dataFn => “myCustomInterfaceFunction”

jsFile:キューに入れられる登録済みスクリプトの名前
このインターフェース

例:jsFile => “my-custom-interface-js”

キャップ:ユーザーがこのインターフェースを表示/編集するために必要な機能、
デフォルトはedit_others_postsです

例:cap => “edit_others_posts”

editcap:設定されていない場合、グリッドを編集するために必要な機能
すべての視聴者は編集者であると見なされます

例:editcap => “edit_others_posts”

noedit:編集機能をオフにします(editcap = nosuchcapabilityと同じ)

例:noedit => true

columnFilters:デフォルトの列フィルター。これはcolumn-> valの配列です。
ページが読み込まれたときにデフォルトの列フィトラーとして適用されます

例:columnFilters => Array( “Year” => “2017”)

columnNameMap:表示されたラベルへの実際の列名のマップ

例:columnNameMap => Array( ‘column_name’ => ‘Column Alias’)

noedit_columns、hide_columns:いくつかの列を非表示にすることができます
または編集を防止します。これらのフィールドを名前に設定することでこれを行うことができます
非表示または編集不可にする列の数(例:ID)

例:noedit_columns => “data、id”またはnoedit_columns => Array( ‘data’、 ‘id’)

save_cb、delete_cb:データの配列で呼び出される関数名:
dbte、update配列、column配列、および変更されたインデックス配列
call_user_func($ cur-> save_cb、Array( ‘table’ => $ cur、 ‘update’ => $ up、
‘columns’ => $ cols、 ‘indexes’ => $ idxs、 ‘id’ => $ id));
call_user_func($ cur-> delete_cb、$ cur、$ id);
コールバックでデータが挿入された場合は、$ data [‘id’]に入力して、データを受け入れる必要があります
参照により

auto_date:日時のように見える列は、そのように扱われる必要があります
これは、列のデータ型に基づいています

バグのようなものですが、iso8601とは異なる日付形式を使用できます
例:auto_date => true

autoHeight:autoHeightオプションをslickgridに渡します(
グリッド上に垂直スクロールバーはなく、代わりに
窓)

例:auto_height => true

async_data:インライン化する代わりに非同期でデータを要求する
それ。遅いクエリをより速く「見える」ようにします。

例:async_data => true

default_values:新しい行に必要なデフォルト値のa_array

例:default_values => Array( “name” => “First M Last”)

export_id_field:エクスポート結果を制限するときに使用するフィールド

一部のSQLには特定のフィールドが必要です–デフォルトはtable.id_colです

例: “export_id_field” => “mytbl.fooid”

例:
`

if(function_exists( ‘add_db_table_editor’)){
add_db_table_editor( ‘title = Employees&table = employees’);
add_db_table_editor(array(
‘title’ => ’イベント登録’、
‘table’ => ’event_registrations’、
‘sql’ => ’SELECT * FROM event_registrations ORDER BY date_entered DESC’
));
}
`
理由と期待
以前、私の会社はDB-toolkitを使用して最小限のサービスを提供していました
WordPress管理者によるカスタムテーブルのデータベースインターフェイス。
構成は私たちが行っていたものにとって面倒でしたが、
仕事をし、何かを書くよりも簡単でした。ただし、DB-Toolkitの場合
維持されなくなり、シンプルだが適切なものが見つかりませんでした
代わりに、私は自分の目標にもっと正面から取り組むことにしました
このプラグインを使用するには、PHPとSQLの基本的な知識が必要です。そうだった
彼の仕事を達成するのを助けるためにプログラマーによって書かれ、
現在、管理設定画面を提供しています(代わりに単純な機能
テーマの関数ファイルの呼び出しは、
画面)。私の構成は
ソース管理で安全に(DB-toolkitが
アップグレードしてすべての構成を失います)。

プラグインの作者

Russ Tyndall @ Acceleration.net

プラグインの公式ウェブサイトアドレス

https://wordpress.org/plugins/wp-db-table-editor/
WP-DB-テーブルエディタープラグインの使用で問題が発生した場合は、以下にコメントしてください。問題の解決に最善を尽くします

コメントする

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です