0

In my custom module

app/code/local/Maddyboy/Instagramapi/data/instagramapi_setup/data-upgrade-0.1.0-0.1.1.php

<?php
$content = 'BLOCK CONTENT HERE';
//if you want one block for each store view, get the store collection
$stores = Mage::getModel('core/store')->getCollection()->addFieldToFilter('store_id', array('gt'=>0))->getAllIds();
//if you want one general block for all the store viwes, uncomment the line below
$stores = array(0);
foreach ($stores as $store){
    $block = Mage::getModel('cms/block');
    $block->setTitle('Block title here');
    $block->setIdentifier('block_identifier_here');
    $block->setStores(array($store));
    $block->setIsActive(1);
    $block->setContent($content);
    $block->save();
}

app/code/local/Maddyboy/Instagramapi/etc/config.xml

<Maddyboy_Instagramapi>
      <version>0.1.1</version> // changed to 0.1.1
</Maddyboy_Instagramapi>

app/design/frontend/base/default/layout/instagramapi.xml

<?xml version="1.0"?>   
<layout version="0.1.1"> 

Still, static block is not shown in the admin panel.

config.xml

<?xml version="1.0"?>
<config>
  <modules>
    <Maddyboy_Instagramapi>
      <version>0.1.1</version>
    </Maddyboy_Instagramapi>
  </modules>
  <frontend>
    <routers>
      <instagramapi>
        <use>standard</use>
          <args>
            <module>Maddyboy_Instagramapi</module>
            <frontName>instagramapi</frontName>
          </args>
      </instagramapi>
    </routers>
        <layout>
          <updates>
            <instagramapi>
              <file>instagramapi.xml</file>
            </instagramapi>
          </updates>
        </layout>
  </frontend>
  <global>
    <helpers>
      <instagramapi>
        <class>Maddyboy_Instagramapi_Helper</class>
      </instagramapi>
    </helpers>
    <blocks>
      <instagramapi>
        <class>Maddyboy_Instagramapi_Block</class>
      </instagramapi>
    </blocks>
    <models>
      <instagramapi>
        <class>Maddyboy_Instagramapi_Model</class>
        <resourceModel>instagramapi_mysql4</resourceModel>
      </instagramapi>
    </models>
     <events>
            <controller_front_init_routers>
                <observers>
                    <Maddyboy_Instagramapi_model_observer>
                        <type>singleton</type>
                        <class>Maddyboy_Instagramapi_Model_Observer</class>
                        <method>checkForConfigRequest</method>
                    </Maddyboy_Instagramapi_model_observer>
                </observers>
            </controller_front_init_routers>
        </events>

  </global>
  <admin>
    <routers>
      <instagramapi>
        <use>admin</use>
        <args>
          <module>Maddyboy_Instagramapi</module>
          <frontName>admin_instagramapi</frontName>
        </args>
      </instagramapi>
    </routers>
  </admin>
  <adminhtml>
    <menu>
      <instagramapi module="instagramapi">
        <title>Instagramapi</title>
        <sort_order>100</sort_order>
        <children>
          <instagramapibackend module="instagramapi">
            <title>Backend Page Title</title>
            <sort_order>0</sort_order>
            <action>admin_instagramapi/adminhtml_instagramapibackend</action>
          </instagramapibackend>
        </children>
      </instagramapi>
    </menu>
    <acl>
      <resources>
        <all>
          <title>Allow Everything</title>
        </all>
        <admin>
          <children>
            <instagramapi translate="title" module="instagramapi">
              <title>Instagramapi</title>
              <sort_order>1000</sort_order>
              <children>
          <instagramapibackend translate="title">
            <title>Backend Page Title</title>
          </instagramapibackend>
              </children>
            </instagramapi>
          </children>
        </admin>
      </resources>
    </acl>
    <layout>
      <updates>
        <instagramapi>
          <file>instagramapi.xml</file>
        </instagramapi>
      </updates>
    </layout>
  </adminhtml>    
    <crontab>
        <jobs>            
            <instagramapi_instagramapicron>
                <schedule><cron_expr>*/5 * * * *</cron_expr></schedule>
                <run><model>instagramapi/cron::Instagramapicron</model></run>
            </instagramapi_instagramapicron>
        </jobs>
    </crontab>
</config> 

UPDATE Custom static block is created now, is there any way through which i can append the created block to some reference like head

In controller we can append like

    $block = $this->getLayout()->createBlock(
'Mage_Core_Block_Template',
'my_block_name_here',
array('template' => 'instagramapi/apislider.phtml')
);

$this->getLayout()->getBlock('head')->append($block);

but how to do this in my situation.

0

you are missing below code in your config.xml, add below code under global tag

<resources>
    <instagramapi_setup>
        <setup>
            <module>Maddyboy_Instagramapi</module>
        </setup>
        <connection>
            <use>core_setup</use>
        </connection>
    </instagramapi_setup>
</resources>

Also if you don't have any previous sql script in your module then your file name should be mysql4-install-0.1.0.php here(0.1.0 is your version)

  • Block is created , still no entry in core_resources – inrsaurabh Oct 24 '17 at 6:53
  • do you have any previous install script in your module or it is the first? – Piyush Oct 24 '17 at 6:54
  • first time , just to create static block – inrsaurabh Oct 24 '17 at 6:56
  • check my updated answer – Piyush Oct 24 '17 at 7:00
  • I am creating it from data folder , so mysql4 0r data-upgrade-0.1.0-0.1.1.php – inrsaurabh Oct 24 '17 at 7:03
0

Add resource tag in your config.xml under global tag

<resources>
        <maddyboy_instagramapi_setup>
        <setup>
            <module>Maddyboy_Instagramapi</module>
            <class>Maddyboy_Instagramapi_Model_Resource_Setup</class>
        </setup>
        </maddyboy_instagramapi_setup>
    </resources>

And create a new file Model/Resource/Setup.php and add below code

class Maddyboy_Instagramapi_Model_Resource_Setup extends Mage_Core_Model_Resource_Setup
{
}
-1

Please check your "core_resource" table in DB, and check your module Maddyboy_Instagramapi version 0.1.1 updated or not.

Add following in your config.xml

<global>
...
<resources>
        <instagramapi_setup>
            <setup>
                <module>Maddyboy_Instagramapi</module>
            </setup>
            <connection>
                <use>core_setup</use>
            </connection>
        </instagramapi_setup>
    </resources>
...
</global>
  • In core_resource there is no Maddyboy_Instagramapi but my plugin is listed in admin panel under Advanced and its enabled – inrsaurabh Oct 24 '17 at 6:25
  • its listed in core_config_data – inrsaurabh Oct 24 '17 at 6:28
  • please add manually entry of your module in core_resource table i.e. code : maddyboy_instagramapi , version and data_version should be same : 0.1.1 – Aasim Goriya Oct 24 '17 at 6:29
  • I did as you said , cleared cashe and refereshed the home page, still no static block is created – inrsaurabh Oct 24 '17 at 6:32
  • @AasimGoriya adding manual entry in core_resource not going to create add static block instead it can create further problem – Piyush Oct 24 '17 at 6:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.