Skip to main content

How to make has many function in expression engine


Step 1: Make an array


$rel=array();

$rel['exp_incoming_product']['id']='order_id';

$rel['exp_incoming_product']['level']=1;

Notes: 1) Here exp_incoming_product is table name from which you want to make
2) order_id id foreign key of table.

$data=$this->hasMany('exp_incoming_order',$rel,$member_id,'member_id');

Notes: 1)  Here exp_incoming_order is table 
hasMany function

function hasMany($t1,$tables,$id,$t1_id_name)
{
ee()->db->select('*');
ee()->db->from($t1);
ee()->db->order_by('id','desc');
ee()->db->where($t1_id_name,$id);
$query1 = ee()->db->get();
$data=array();
foreach($query1->result_array() as $key_1=>$result) 
{
foreach($result as $key=>$value1) 
{
$data[$key_1][$t1][$key]=$value1;
}
}
foreach($data as $single=>$part) {
foreach($tables as $table=>$value2) {
ee()->db->select('*');
ee()->db->from($table);
ee()->db->where($value2['id'],$part[$t1]['id']);
$query2 = ee()->db->get();
foreach($query2->result_array() as $key2=>$result2) 
{
foreach($result2 as $key3=>$value3) 
{
$data[$single][$table][$key2][$key3]=$value3;
}
}
}
}
return $data; 
} 


Comments

Popular posts from this blog

Generate XML file in Cakephp

Steps to Generate XML file using CakePHP: Step-1 Enable to parse xml extension in config route.php file.     Router::parseExtensions('xml'); Step-2 Add Request Handler Component to the Controller    var $components = array(‘RequestHandler’); Step-3 Add controller Action For XML Generation in Post Controller     function generateXMLFile()     {         if ($this->RequestHandler->isXml()) { // check request type             $this->layout = 'empty'; // create an empty layout in app/views/layouts/empty.ctp              }        }  Add header code in empty layout <?php header('Content-type: text/xml');?> <?php echo $this->Xml->header(); ?> <?php echo $content_for_layout; ?> Step-4 Set up View To generate XML Create xml folder inside Posts vi...

Simple JavaScript Object and Class Examples

In JavaScript, most things are objects. An object is a collection of related data and/or functionality Namespace: Everything you create in JavaScript is by default global. In JavaScript namespace is Global object . How to create a namespace in JavaScript? Create one global object, and all variables, methods, and functions become properties of that object. Example:  // global namespace var MYAPP = MYAPP || {}; Explaination: Here we first checked whether MYAPP is already defined.If yes, then use the existing MYAPP global object, otherwise create an empty object called MYAPP How to create sub namespaces? // sub namespace MYAPP.event = {}; Class JavaScript is a prototype-based language and contains no class statement.JavaScript classes create simple objects and deal with inheritance. Example: var Person = function () {}; Explaination: Here we define a new class called Person with an empty constructor. Use the class keyword class Calculation {}; A class expr...

How to Add Next Previous links to The Event Calendar

Add Next/Previous links to The Event Calendar Wordpress Plugin Add code to your child theme’s functions.php file /**  * Allows visitors to page forward/backwards in any direction within month view */ if ( class_exists( 'Tribe__Events__Main' ) ) { class ContinualMonthViewPagination {     public function __construct() {         add_filter( 'tribe_events_the_next_month_link', array( $this, 'next_month' ) );         add_filter( 'tribe_events_the_previous_month_link', array( $this, 'previous_month' ) );     }     public function next_month() {         $url = tribe_get_next_month_link();         $text = tribe_get_next_month_text();         $date = Tribe__Events__Main::instance()->nextMonth( tribe_get_month_view_date() );         return '<a data-month="' . $date . '" href="' . $url . '" rel="next"...