バージョン選択

フォーラム

メニュー

オンライン状況

65 人のユーザが現在オンラインです。 (59 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 65
もっと...

PR

デザインテンプレート EC-CUBE3.0版が登場!
広告掲載について

サイト内検索

プラグイン > 開発について > パラメーターのあるURLを左メニューに追加

開発について

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
ABeard89
投稿日時: 2017/2/16 18:02
対応状況: −−−
半人前
登録日: 2017/2/3
居住地:
投稿: 12
パラメーターのあるURLを左メニューに追加
[EC-CUBE] 3.0.13
[PHP] 7.1.0
[カスタマイズの有無] 無

プラグインで管理画面の左メニュー追加をしようとしています。このようなURLを使ったら、方法分かります。
$app->match('/admin/test1', 'Object::method')->bind('test_url_1')

適切なところでこんな配列を入れたら、問題はありません。
array(
    'id' => 'item_id',
    'name' => 'Item Name',
    'url' => 'test_url_1'
)


しかし、パラメーターのあるURLを使ったら、
$app->match('/admin/test2/{id}', 'Object::method')->bind('test_url_2')

同じように、配列を作って入れたら、
array(
    'id' => 'item_id',
    'name' => 'Item Name',
    'url' => 'test_url_2'
)

「id」が設定されていませんから、URLにできません。

「id」がちゃんとあれば、URLに設定方法はありますか?

返事してくれて誠にありがとうございます!
ABeard89
投稿日時: 2017/2/17 11:02
対応状況: −−−
半人前
登録日: 2017/2/3
居住地:
投稿: 12
Re: パラメーターのあるURLを左メニューに追加
はっきり言ったら、このようにサービスプロバイダーで入れています。
<?php

namespace Plugin\TestPlugin\ServiceProvider;

use Eccube\Application;
use Silex\Application as BaseApplication;
use Silex\ServiceProviderInterface;

class TestPluginServiceProvider implements ServiceProviderInterface
{
    public function register(BaseApplication $app)
    {
        $app->match('/admin/test1', 'Object::method')->bind('test_url_1');
        $app->match('/admin/test2/{id}', 'Object::method')->bind('test_url_2');
        
        $app['config'] = $app->share(
                    $app->extend(
                        'config',
                        function ($config) {
                            // 親アイテム
                            $menuItem['id'] = "parent_item";
                            $menuItem['name'] = "Parent Item";
                            $menuItem['has_child'] = "true";
                            $menuItem['icon'] = "cb-plus-square";
                            
                            // 子供アイテム
                            $children = array(
                                array(
                                    "id" => "child_item_1",
                                    "name" => "Child Item 1",
                                    "url" => "test_url_1" // 成功
                                ),
                                array(
                                    "id" => "child_item_2",
                                    "name" => "Child Item 2",
                                    "url" => "test_url_2" // 失敗、idが無い
                                )
                            );
                            
                            $menuItem['child'] = $children;

                            $nav = $config['nav'];
                            
                            // 設定アイテムの位置を習得
                            $insertAtIndex = 0;
                            foreach ($nav as $key => $val) {
                                if ($val['id'] == "setting") {
                                    $insertAtIndex = $key;
                                }
                            }
                            
                            // 習得したところの前に入れる
                            array_splice($nav, $insertAtIndex, 0, array($menuItem));
                            
                            // 保存
                            $config['nav'] = $nav;
        
                            return $config;
                        }
                    )
        );
    }
}
umebius
投稿日時: 2017/2/20 23:58
対応状況: −−−
仙人
登録日: 2016/7/22
居住地: Tokyo
投稿: 712
Re: パラメーターのあるURLを左メニューに追加
管理画面のメニューはadmin/nav.twigで表示されていますが
パラメータを使う様にはなっていないので
admin/nav.twigの修正が必要です。


----------------
//////////////////////////////
(株)U-Mebius EC-CUBE3 カスタマイズ・高速化 ・バグ修正
EC-CUBE関連技術者の採用もお問い合わせください。


ABeard89
投稿日時: 2017/4/28 14:25
対応状況: −−−
半人前
登録日: 2017/2/3
居住地:
投稿: 12
Re: パラメーターのあるURLを左メニューに追加
やはり、テンプレートファイル修正が必要ですね。

返事、ありがとうございました。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

 



ログイン


EC-CUBEペイメント

クレジットカード情報の非保持化対応

統計情報

総メンバー数は20,120名です
総投稿数は82,932件です

投稿数ランキング

1
seasoft
7331
2
AMUAMU
2712
3
nanasess
1644
4
yuh
1392
5
red
1066
6
fukap
907
7
shutta
827
8 ramrun 789
9
tsuji
784
10
468
712
11
umebius
712
12
tao_s
651
13 sumida 638
14
homan
633
15 karin 618
16 DELIGHT 571
17
patapata
502
18
flealog
483
19 tonton 436
20
ecbg
387


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© LOCKON CO.,LTD. All Rights Reserved.