Change module links "gkHeader", "#gkBottom1-3"..

Creative and responsive Joomla template with amazing parallax effect.
Rate this topic: Evaluations: 1, 1.00 on the average.Evaluations: 1, 1.00 on the average.Evaluations: 1, 1.00 on the average.Evaluations: 1, 1.00 on the average.Evaluations: 1, 1.00 on the average.Evaluations: 1, 1.00 on the average.1.00 out of 6 based on 1 vote(s)
GK User
Wed Jun 11, 2014 10:59 am
Reply with quote
Report this post
Hello!

How could I change the module links "gkHeader", "#gkBottom1-3" into something usefull like "#contact"..

What I did:

1. installed the plg_gkmodulelinks from the rest-Files folder
2. enabled the plugin gkmodulelinks
3. open the module in Joomla backend and choose the tab: "Module Title Links (GavickPro)"
3.1 edit Module Title Adress: #ueberuns
3.2 set Enable Module Title link: NO (also tried with: YES)
4. change link in menu from #gkheader to #ueberuns

The result is that the new link www.myhomepagename.com/#ueberuns is shown as url but it does not jump to module position.

I know this question was also given at : https://www.gavick.com/forums/creative/ ... Itemid=376#p145012

It seems to be a general problem in Joomla 3.3, because it won`t work with this tutorial:

You can use module title plugin which should be available in gk_creativity_rest_files_J!25.zip

Once you install the plugin you will see additional settings in modules settings page, see Module Title links and add your link in there "#contact" and disable the link.

Then in your menu you can use #contact as external url link which will link to your module.

Please help!
User avatar
Senior Boarder

GK User
Wed Jun 11, 2014 6:31 pm
Reply with quote
Report this post
Hello,

The only way in this case is specifying the IDs directly in the template code in the layouts/default.php file. In example change:

Code: Select all
<?php if($this->API->modules('bottom3')) : ?>
    <section id="gkBottom3">
       <div>
          <jdoc:include type="modules" name="bottom3" style="<?php echo $this->module_styles['bottom3']; ?>" modnum="<?php echo $this->API->modules('bottom3'); ?>" />
       </div>
    </section>
    <?php endif; ?>


to:

Code: Select all
<?php if($this->API->modules('bottom3')) : ?>
    <section id="gkBottom3">
       <div id="contact">
          <jdoc:include type="modules" name="bottom3" style="<?php echo $this->module_styles['bottom3']; ?>" modnum="<?php echo $this->API->modules('bottom3'); ?>" />
       </div>
    </section>
    <?php endif; ?>


The mentioned plugin is not used for this functionality - it is used for creating links in the module titles.
User avatar
Administrator

GK User
Wed Jun 11, 2014 6:49 pm
Reply with quote
Report this post
Sorry if I ask but are you sure about this?! Your college means in the other post I have given before:

"Originally this plugin was to make module titles as links to custom links. After many requests we have converted it to support creative one page linking."
User avatar
Senior Boarder

GK User
Wed Jun 11, 2014 7:13 pm
Reply with quote
Report this post
I'm sure for 100% - it seems than NormanUK misunderstand the functionality of the plugin. The plugin results are used in the html/modules.php file:

Code: Select all
if($params->get('module_link_switch')) {
               echo '<h3 class="header"><span id="module' . $module->id .'"><a href="'. $params->get('module_link') .'">' . $module->title . '</a></span></h3>';
            } else {
               echo '<h3 class="header"><span id="module' . $module->id .'">' . $module->title . '</span></h3>';
            }


as you can see - there is no references for the module_link and module_link_switch options in the id attribute.
User avatar
Administrator

GK User
Thu Jun 12, 2014 6:29 am
Reply with quote
Report this post
Oh no it was my fault, I´am in the wrong template it is Creativity, not Creative!

That is why the code in the layouts/default.php from Creativity is looking a bit different to yours:
Code: Select all
<?php endif; ?>
        <div id="gkPageContentWrap"<?php if($this->API->modules('inset and sidebar')) : ?> class="gk3Columns"<?php endif; ?>>
                <?php if($this->API->modules('header')) : ?>
                <div id="gkHeader">
                        <jdoc:include type="modules" name="header" style="<?php echo $this->module_styles['header']; ?>" onepagemode="1" />
                </div>
                <?php endif; ?>


I tried to change it anyway, but that killed (of course) the page design..
User avatar
Senior Boarder

GK User
Thu Jun 12, 2014 8:28 am
Reply with quote
Report this post
In this case please just change:

Code: Select all
<?php if($this->API->modules('header')) : ?>
                <div id="gkHeader">
                        <jdoc:include type="modules" name="header" style="<?php echo $this->module_styles['header']; ?>" onepagemode="1" />
                </div>
                <?php endif; ?>


to:

Code: Select all
<?php if($this->API->modules('header')) : ?>
                <div id="gkHeader">
                        <div id="YOUR_ID">
                               <jdoc:include type="modules" name="header" style="<?php echo $this->module_styles['header']; ?>" onepagemode="1" />
                        </div>
                </div>
                <?php endif; ?>
User avatar
Administrator

GK User
Thu Jun 12, 2014 9:51 am
Reply with quote
Report this post
That worked fine for #gkHeader and #gkMainbody, but it don´t work for #gkBottom1-3, because this don`t exists in the default.php.

I just found that code:

Code: Select all
 <?php if($this->API->modules('bottom1')) : ?>
                <div id="gkBottom1">
                        <?php if(!$one_page_mode): ?>
                        <div class="gkPage">
                                <?php endif; ?>
                                <div class="gkCols6">
                                        <jdoc:include type="modules" name="bottom1" style="<?php echo $this->module_styles['bottom1']; ?>" modnum="<?php echo $this->API->modules('bottom1'); ?>" onepagemode="<?php if($one_page_mode): ?>1<?php else : ?>0<?php endif; ?>" />
                                </div>
                                <?php if(!$one_page_mode): ?>
                        <?php endif; ?>
                        </div>
                </div>
                <?php endif; ?>
                <?php if($this->API->modules('bottom2')) : ?>
                <div id="gkBottom2">
                        <div class="gkPage">
                                <div class="gkCols6">
                                        <jdoc:include type="modules" name="bottom2" style="<?php echo $this->module_styles['bottom2']; ?>" modnum="<?php echo $this->API->modules('bottom2'); ?>" />
                                </div>
                        </div>
                </div>
                <?php endif; ?>
User avatar
Senior Boarder

GK User
Thu Jun 12, 2014 2:57 pm
Reply with quote
Report this post
You have add an ID to the <div class="gkPage"> elements inside the bottom1 and bottom2. Bottom3 module position doesn't exists in the creativity template: http://demo.gavick.com/joomla25/creativ ... -positions
User avatar
Administrator

GK User
Thu Jun 12, 2014 3:28 pm
Reply with quote
Report this post
Sorry but "#gkBottom1-3" is given from your Quickstart and used for contact. I don´t know how that works, but it does work at the quickstart installation!?
User avatar
Senior Boarder

GK User
Thu Jun 12, 2014 3:36 pm
Reply with quote
Report this post
Now I understand - you mean module with ID "gkBottom1-3" - the third module on the Bottom 1 module position. In this case the ID is generated by the modules.php file. The only way to add custom IDs is opening the html/modules.php file and replace the following line:

Code: Select all
echo '<div'.(($attribs['name'] == 'bottom1') ? ' id="gkBottom1-'.$gkModulesCounter[$attribs['name']].'"' : '').' class="box ' . $params->get('moduleclass_sfx') . $modnum_class . $overflow_class . $margin_class . '">';


to:

Code: Select all
$myIDs = array('first-module', 'second-module', 'contact', 'fourth-module', 'fifth-module', 'sixth-module');

echo '<div'.(($attribs['name'] == 'bottom1') ? ' id="'.$myIDs[$gkModulesCounter[$attribs['name']]].'"' : '').' class="box ' . $params->get('moduleclass_sfx') . $modnum_class . $overflow_class . $margin_class . '">';
User avatar
Administrator


cron