SMACK it CREATIONS portfolio

Blog

We komen wel eens wat tegen op het web, en dat is altijd handig om te delen!

vrijdag, 07 november 2014 01:00

K2 Joomla upload locked

K2 is een mooie applicatie binnen Joomla, alleen voor velen is de mediamanager bijna onbruikbaar omdat je hem vanaf de frontend niet kunt gebruiken voor image uploading. hier is een hack die dat oplost. (geschreven in engels)

if you really like to add this feature (like i did)

open file: /administrator/ components/ com_k2/ controllers/ media.php

search for: (around line 71)


// Read only access for front-end. Full access for administration section.
switch($attr)
{
case 'read' :
return true;
break;
case 'write' :
return ($mainframe->isSite()) ? false : true;
break;
case 'locked' :
return ($mainframe->isSite()) ? true : false;
break;
case 'hidden' :
return false;
break;
}

}

if ($mainframe->isAdmin())
{
$permissions = array(
'read' => true,
'write' => true
);
}
else
{
$permissions = array(
'read' => true,
'write' => false
);

</code>



Change to:


// Read only access for front-end. Full access for administration section.
switch($attr)
{
case 'read' :
return true;
break;
case 'write' :
return ($mainframe->isSite()) ? true : true;
break;
case 'locked' :
return ($mainframe->isSite()) ? true : true;
break;
case 'hidden' :
return false;
break;
}

}

if ($mainframe->isAdmin())
{
$permissions = array(
'read' => true,
'write' => true
);
}
else
{
$permissions = array(
'read' => true,
'write' => true
);

Remember, this is a hack, i have not checked anything in safety and security, use it for your own risk.
Gepubliceerd in Blog
vrijdag, 09 juni 2017 16:02

Remove ids from article urls in Joomla

It quite simple, no big hacks. In fact, Joomla already had it build in, it is just not shown in the admin menu (don't ask us why. 

 

simple change the file: administrator\components\com_content\config.xml.

and add somewhere between the other items:

 

<field name="sef_advanced_link"

    type="radio"

    default="0"

    label="Sef Advanced Mode"

    description="Remove ItemID from Content URL?">

        <option    value="0">JNO</option>

        <option    value="1">JYES</option>

</field>



Now go back to your article options, and you have a new option :) SEF Advanced Modus, just put it on and your done :)

Gepubliceerd in Blog
donderdag, 04 december 2014 01:00

Jsitemap K2 SIG Gallery hack

Jsitemap, een grandioze aanvulling voor Joomla hebben we laatst aangeschaft. Al snel kwamen we er achter dat de images uit de gallery niet werken toegevoegd aan de imagesitemap. Hier is een hack om jouw images allemaal aan Google te kunnen toevoegen! (geschreven in engels)

This hack enables Jsitemap to crawl to all your K2 Simple Image Gallery photos, and gives your image crawling an amazing boost 

open 

/plugins/content/jw_sigpro/jw_sigpro/tmpl/YOURSIGTEMPLATE/default.php (check the SIG settings for Layout template for image galleries)

find (around line 24)

<img class="sigProImg" src="/<?php echo $transparent; ?>" alt="<?php echo JText::_('JW_SIGP_LABELS_08').' '.$photo->filename; ?>" title="<?php echo JText::_('JW_SIGP_LABELS_08').' '.$photo->filename; ?>" style="width:<?php echo $photo->width; ?>px;height:<?php echo $photo->height; ?>px;background-image: url('/<?php echo $photo->thumbImageFilePath; ?>');" />

to:

 <img alt="<?php echo JText::_(‘YOUR_SITE_NAME').' '.$photo->captionTitle; ?>" title="<?php echo JText::_(‘YOUR_SITE_NAME').' '.$photo->captionTitle; ?>" class="sigProImg" src="/<?php echo $photo->thumbImageFilePath; ?>" style="width:<?php echo $photo->width; ?>px;height:<?php echo $photo->height; ?>px;" />


change "Title description for images sitemap" in Sitemap settings from Auto to Alt.

result:

all images in the SIG pro will be indexed by Google as: YOUR_SITE_NAME TITLE

 

  • Remember to give your images a unique name, you don’t want all your images to be indexed as “Title”
  • This hack will probably be deleted after SIG upgrades
  • We are not responsible for any damage using this hack, it is not tested for security nor the security and working of the K2 core, and 3rd party compo's
Gepubliceerd in Blog
dinsdag, 10 maart 2015 01:00

K2 Hide Specific field hack

K2, het blijft een moois systeem, maar soms loop je toch tegen kleine dingen op... want hoe geef je nu een K2 extra field weer. Je hebt daarvoor twee manieren. Bijvoorbeeld, je wilt in het TAG overzicht een bepaald extrafielt weergeven, dan doe je dat door de volgende code in je tag.php te zetten

zet in je tag.php

<?php $extrafields = json_decode($item->extra_fields);?>
<?php foreach($extrafields as $key=>$value): ?>
<?php if($extrafields[$key]->id == 'XX'&&$extrafields[$key]->value!=''): ?>
<span class="pricetag"><?php echo $extrafields[$key]->value; ?></span>
<?php endif; ?>
<?php endforeach; ?>

verwijs XX naar het ID nummer van je extra field.:

Maar je hebt ook een andere manier, deze manier moet je bijvoorbeeld gebruiken in je Category_item.php

 <?php 
// if form is empty show default form
$k2obj = new K2ModelItem();
$fields = $k2obj->getItemExtraFields($this->item->extra_fields, $this->item);
//echo $this->item->extraFields->State->name;
echo $this->item->extraFields->XXXXXXX->value;
?>

verwijs XXXXXXX naar je Extrafield naam (dus niet het ID nummer!)

 

Dan als klap op de vuurpijl heb je ook nog fields die je bijvoorbeeld wel op je TAG overzicht wilt hebben, maar die je niet tussen je item view wilt hebben. Zo had ik een pricelabel die ik alleen zichtbaar wilde hebben op de tag view, maar de value wilde ik niet in het item overzicht. Het was even puzzelen, maar uiteindelijk kwam ik met deze code toch tot het juiste resultaat. Zorg hierbij dat dit extrafielt op de eerste plek komt te staan. Wil je meerdere fields onzichtbaar maken verhoog dan de (-n+1) naar 2 voor 2 velden and so on!

Zet in je item.php

<?php 
$k2obj = new K2ModelItem();
$fields = $k2obj->getItemExtraFields($this->item->extra_fields, $this->item);
if (!empty($this->item->extraFields->SitePriceFrom->value))
echo '<style> div.itemExtraFields ul li:nth-child(-n+1) { display:none; } </style>';
?>

 

Gepubliceerd in Blog

Onze website maakt gebruikt van cookies bekijk hier onze privacy statement