bustanchi
سه شنبه 09 شهریور 1395, 17:08 عصر
با عرض سلام خدمت دوستان عزیز
اگه آموزش ساخت منو داینامیک رو هم توی قسمت ادمین و هم توی صفحه اصلی کسی داره لطفا بزاره خیلی واجبه ؟
منظورم یه منوی حرفه ای که قابلیت زیر منو و نمایش زیر منوها رو داشته باشه برای مثال :
منو1
- منو2
- منو3
-منو4
-- منو5
numberone1
پنج شنبه 11 شهریور 1395, 00:55 صبح
با عرض سلام خدمت دوستان عزیز
اگه آموزش ساخت منو داینامیک رو هم توی قسمت ادمین و هم توی صفحه اصلی کسی داره لطفا بزاره خیلی واجبه ؟
منظورم یه منوی حرفه ای که قابلیت زیر منو و نمایش زیر منوها رو داشته باشه برای مثال :
منو1
- منو2
- منو3
-منو4
-- منو5
سلام
ساخت منو ربطی به کد ایگنتیتر نداره. شما با html css باید منو طراحی کنید.
برای داینامیک بودن هم شما کل اطلاعات و میفرستی به view و توی view با foreach چاپ میکنی.
برای زیر منو هم میتونی از فیلد parent_id استفاده کنی. اگر سر شاخه بود parent_id 0 باشه اگر زیر شاخه باشه آیدی پدر و بگیره.
در کل اینا ربطی به کد ایگنایتر نداره
bustanchi
سه شنبه 16 شهریور 1395, 10:35 صبح
این قسمتی از کد کنترلر من برای ارسال اطلاعات منو هست :
$data['menu_items1'] = $this->model_menu_items1->menu_items1(array('order' => array(array('position', 'asc'))));
foreach($data['menu_items1'] as $k=>$i)
{
$data['menu_items1'][$k]['sub_menu'] = $this->model_menu_items1->menu_items1(array('where'=>array('id_parent' => $i['id']),'order' => array(array('position', 'asc'))));
}
واین هم کد view من هست که قراره منو رو نمایش بده :
<form name="mainform" >
<table class="table table-tree table-hover table-middle">
<thead>
<tr>
<th width="5%">
<?php $this->load->view('backend/common/manage/selector'); ?>
</th>
<th width="5%">کد منو</th>
<th width="5%">کد والد</th>
<th width="7%">موقعیت</th>
<th width="61%">عنوان</th>
<th width="10%" class="text-center"> </th>
<th width="10%" class="text-left">وضعیت</th>
</tr>
</thead>
</table>
<?php
//print_r($menu_items1);exit();
foreach ($menu_items1 as $i => $item) {
?>
<table class="table table-tree table-hover table-middle">
<tbody>
<tr class="multiple-table-row tfn-row-status-<?php echo $item['status']; ?>">
<td width="5%">
<input type="checkbox" name="id[]" value="<?php echo $item['id']; ?>" class="checkbox cm-item cm-item-status-a">
</td>
<td width="5%">
<span><?php echo $item['id']; ?></span>
</td>
<td width="5%">
<span><?php echo $item['id_parent']; ?></span>
</td>
<td width="7%">
<input type="text" name="data[<?php echo $item['id']; ?>][position]" value="<?php echo $item['position']; ?>" size="3" class="form-control input-sm input-micro input-hidden">
</td>
<td width="61%">
<a class="row-status " href="<?php tfn_admin_url('menu_items1/edit/' . $item['id']); ?>">
<?php if($item['id_parent']!=0) echo ' _ '; echo $item['title'];?>
</a>
<?php if($item['id_parent']!=0) echo '(زیر منو)'; ?>
</td>
<td class="text-center" width="10%">
<div class="hidden-tools">
<div class="btn-group">
<a class="btn btn-default dropdown-toggle" data-toggle="dropdown">
<i class="glyphicon glyphicon-cog"></i>
<span class="caret"></span>
</a>
<ul class="dropdown-menu pull-left">
<li>
<a href="<?php tfn_admin_url("menu_items1/edit/$item[id]"); ?>">ویرایش</a>
</li>
<li>
<a class="tfn-ajax tfn-confirm" data-ajax-type="bumble" data-ajax-variables='{"id":"<?php echo $item['id']; ?>"}' data-ajax-patch="menu_items1/delete" data-ajax-onsuccess="obj.parents('table').fadeOut();">حذف</a>
</li>
</ul>
</div>
</div>
</td>
<td class="text-left" width="10%">
<?php get_instance()->load->view('backend/common/status/drop_select', array('data' => $item, 'path' => 'menu_items1/update_status')); ?>
</td>
</tr>
<?php
if($item['sub_menu']){
foreach ($item['sub_menu'] as $i => $item) {?>
<tr class="multiple-table-row tfn-row-status-<?php echo $item['status']; ?>">
<td width="5%">
<input type="checkbox" name="id[]" value="<?php echo $item['id']; ?>" class="checkbox cm-item cm-item-status-a">
</td>
<td width="5%">
<span><?php echo $item['id']; ?></span>
</td>
<td width="5%">
<span><?php echo $item['id_parent']; ?></span>
</td>
<td width="7%">
<input type="text" name="data[<?php echo $item['id']; ?>][position]" value="<?php echo $item['position']; ?>" size="3" class="form-control input-sm input-micro input-hidden">
</td>
<td width="61%">
<a class="row-status " style="padding-right:40px;" href="<?php tfn_admin_url('menu_items1/edit/' . $item['id']); ?>"><?php if($item['id_parent']!=0) echo ' _ '; echo $item['title'];?></a> <?php if($item['id_parent']!=0) echo '(زیر منو)'; ?>
</td>
<td class="text-center" width="10%">
<div class="hidden-tools">
<div class="btn-group">
<a class="btn btn-default dropdown-toggle" data-toggle="dropdown">
<i class="glyphicon glyphicon-cog"></i>
<span class="caret"></span>
</a>
<ul class="dropdown-menu pull-left">
<li>
<a href="<?php tfn_admin_url("menu_items1/edit/$item[id]"); ?>">ویرایش</a>
</li>
<li>
<a class="tfn-ajax tfn-confirm" data-ajax-type="bumble" data-ajax-variables='{"id":"<?php echo $item['id']; ?>"}' data-ajax-patch="menu_items1/delete" data-ajax-onsuccess="obj.parents('table').fadeOut();">حذف</a>
</li>
</ul>
</div>
</div>
</td>
<td class="text-left" width="10%">
<?php get_instance()->load->view('backend/common/status/drop_select', array('data' => $item, 'path' => 'menu_items1/update_status')); ?>
</td>
</tr>
<?php
}
?>
<?php }
?>
</tbody>
</table>
<?php
}
?>
</form>
و در آخر هم نحوه نمایش فعلی منو هست که نمیخوام اینگونه باشه و میخوام زیر منو در پایین منو والد چاپ بشه و اطلاعات دیگری لود نشه !!
142419
واین هم جدول مربوطه در دیتابیس هست !!
142420
لطفا بگین اشکال کار کجاست ؟؟ ( تست 3 باید زیرمنو تست 2 باشه !! )
numberone1
چهارشنبه 17 شهریور 1395, 02:59 صبح
سلام
فک کنم foreach اول که اجرا میشه به این شرط میرسه باید از همین جا foreach دوم شروع شه
اگر زیر مجموعه سوم چهارم هم داره باید به همین شکل حلقه foreach توی حلقه قبلی باز بشه
<?php if($item['id_parent']!=0) echo '(زیر منو)'; ?>
توی کنترلر باید یه چیزی تو این شکل و ساختار آرایه پاس کنی به view
142426
numberone1
چهارشنبه 17 شهریور 1395, 03:32 صبح
آرایه سه سطحی درست کردم امیدوارم واضح باشه
142427
$array = ['id' => 1,
'parent_id' => '0',
'name' => 'lvl1',
'sub' => [['id' => 2, 'parent_id' => '1', 'name' => 'lvl2'],
['id' => 3, 'parent_id' => '1', 'name' => 'lvl2'],
['id' => 4, 'parent_id' => '1', 'name' => 'lvl2']
],
['id' => 5,
'parent_id' => '0',
'name' => 'lvl1',
'sub' => [['id' => 6, 'parent_id' => '5', 'name' => 'lvl2'],
['id' => 7, 'parent_id' => '5', 'name' => 'lvl2'],
['id' => 8, 'parent_id' => '5', 'name' => 'lvl2']
]
],
['id' => 9,
'parent_id' => '0',
'name' => 'lvl1',
'sub' => [['id' => 10, 'parent_id' => '1', 'name' => 'lvl2'],
['id' => 11, 'parent_id' => '1', 'name' => 'lvl2'],
['id' => 12, 'parent_id' => '1', 'name' => 'lvl2','sub'=>[
['id' => 13, 'parent_id' => '12', 'name' => 'lvl3'],
['id' => 14, 'parent_id' => '12', 'name' => 'lvl3'],
['id' => 15, 'parent_id' => '12', 'name' => 'lvl3']
]]
]
]
];
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.