# JOOMLA :: read more im override verarbeiten



## NetBull (18. November 2014)

Hi, 

ich mach gerade einen content/featured ovveride für mein Template und habe folgendes Problem:

a) ich würde gerne die intro-items mit einem eigenen read more versehen. Wo lese ich die Adresse aus die ich verlinken muss. 

b) woher bekomme ich den Text der als Read-More Text vorgesehen ist (also das was auf dem Button stehen sollte)


```
$PageContent .= '<div class="ReadMore" title="??? b)"><a href="??? a)">...</a></div>';
```

LG NetBu||


----------



## Alice (19. November 2014)

http://css-tricks.com/examples/ReadMoreFade/


----------



## NetBull (19. November 2014)

Hi Alice, 

es ging weniger um die Darstellung, sondern mehr darum wie ich die URL für die Verlinkung setzen muss und woher ich den von Joomla definierten ReadMore Text auslesen kann. 

LG NetBu||


----------



## Alice (19. November 2014)

Dazu müsste ich mal eine live Seite und das Template sehen wo der Inhalt ausgegeben wird. Am besten von deiner Webseite. Zusätzlich müsste man sich ggf. auch weitere Sachen wie PHP-Dateien oder PlugIns anschauen.

Denn es gibt viele Wege wie man so etwas konstruiert. Ich weiss nicht, wie es bei Joomla genau umgesetzt wurde. Vielleicht wird die URL bereits in einer PHP-Datei gebildet oder auch in einem Template wie es häufig bei vBulletin der Fall ist.

1.) Beispielseite (am besten deine)
2.) Inhalt des verantwortlichen Templates
3.) Eventuell PHP-Datei/en und/oder PlugIns


----------



## NetBull (19. November 2014)

@Alice

Hi,

sorry, aber jemand der sich mit Joomla auskennt dürfte wissen wie ich zum Ziel komme.

Code-Beispiel ist im ersten Post dieses Thread. Da sind mit Fragezeichen die beiden Positionen markiert die mir Probleme machen.

Allerdings habe ich es momentan erst mal so gelöst:


```
// output of the items which should get displayed in columns
    if( count($this->intro_items)>0 && !empty($this->intro_items) ){
        $cols = $this->params->get('num_columns');
        $rows = round(count($this->intro_items) / $cols);
        $c = 0;
        $w = (int)((100 - $cols)/4);
        $uri = JFactory::getURI()->toString();
        $uri .= 'index.php?option=com_content&view=article&id=' . $item->id;
        $PageContent .= '<table width="100%">';
        foreach ($this->intro_items as $item){
            if($c==0){
                $PageContent .= '<tr>';
            }
            $PageContent .= '<td width="'.$w.'%" valign="top">';
            $PageContent .= '<div class="ContentBox">';
            $PageContent .= '<h2>' . $item->title . '</h2>';
            $PageContent .= str_replace('</p', '</span', str_replace('<p', '<span', $item->introtext));
            $PageContent .= '<div class="ReadMore" title="Weiterlesen"><a href="' . $uri . '">...</a></div>';
            $PageContent .= '<div class="EndFloat"></div>';          
            $PageContent .= '</div>';
            $PageContent .= '</td>';
            $c++;
            if($c>=$cols){
                $c=0;
                $PageContent .= '</tr>';
            }
        }
        $PageContent .= '</table>';
    }
```

Wobei ich nicht glücklich über die URI bin die daraus entsteht:
http://mosys-dev.vbx/dml-joomla/index.php?option=com_content&view=article&id=5

Leider habe ich noch keinen weg gefunden direkt auf den Alias eines Artikels zu verlinken.

Wer weis Rat?
LG NetBu||


----------



## Alice (19. November 2014)

Wie sieht denn "normal" eine URI aus?


----------



## NetBull (20. November 2014)

Eigentlich hätte ich lieber was suchmaschinenfreundlicheres wie zum beispiel den Aliasnamen des Artikels statt den Parametern....


----------



## SpiceLab (20. November 2014)

Sofern Joomla dafür kein entsprechendes Feature/Plugin mitbringt/bietet, wäre mod_rewrite die alternative Lösung, die URLs entsprechend zu manipulieren.

Edit: Als Nichtnutzer von Joomla wieder kurz gegoogelt, und... da gibt's was im Backend


----------



## Alice (20. November 2014)

Ich habe mich lange genug mit "Suchmaschinenfreundlichen" URL's beschäftigt um dir sagen zu können, dass es den Suchmaschinen egal ist wie die URL aussieht. Die verschönerung ist eigentlich nur fürs (dein) Auge.

Es gab mal ein Programm namens "vBSeo" für vBulletin-Foren. Das hat z.B. auch "unschöne" in "schöne" URL's umgeschrieben. Nach bekannt werden großer Sicherheitslücken (und gleichzeitig verschwand der Anbieter inkl. Webseite) sind viel vBulletin-Foren wieder auf die Standard URL's umgestiegen ohnen auch nur eine kleine veränderung im Ranking.

mod_rewrite ist eine tolle Sache, wird aber in Sachen "SEO" überschätzt.


----------



## NetBull (20. November 2014)

hmmm  ... mod_rewrite ist mir zu statisch. Immerhin könnten sich die artikel ändern... dann stimmt das mod-rew nich mehr und ich muss dauernd da nacharbeiten. besser wäre einfach ein aufruf des alias zum beitrag. aber erst mal leb ich mit den "häslichen" URLS


----------



## NetBull (20. November 2014)

@SpiceLab :: danke für das Video.... Das hatte ich auch schon. Wenn ich das aber einstelle, dann gehen die Beiträge nicht mehr. Scheinbar muss ich dann alle menüs neu machen.


----------



## SpiceLab (20. November 2014)

NetBull hat gesagt.:


> @SpiceLab :: danke für das Video.... Das hatte ich auch schon. Wenn ich das aber einstelle, dann gehen die Beiträge nicht mehr. Scheinbar muss ich dann alle menüs neu machen.


Hmm... da kann ich dir leider nicht weiterhelfen.


----------



## Alice (20. November 2014)

Wie gehen nicht mehr? Dann machst Du wahrscheinlich etwas falsch.


----------



## SpiceLab (20. November 2014)

Alice hat gesagt.:


> Wie gehen nicht mehr? Dann machst Du wahrscheinlich etwas falsch.


Wüsstet du auch was?


----------



## Alice (20. November 2014)

Vermutlich die .htaccess Datei.


----------



## NetBull (20. November 2014)

an der htaccess habe ich nichts geändert


----------



## SpiceLab (20. November 2014)

NetBull hat gesagt.:


> an der htaccess habe ich nichts geändert


Das könnte die Ursache sein


----------



## Alice (20. November 2014)

Das wird wohl die Ursache sein.


----------



## SpiceLab (20. November 2014)

NetBull hat gesagt.:


> hmmm  ... mod_rewrite ist mir zu statisch. Immerhin könnten sich die artikel ändern... dann stimmt das mod-rew nich mehr und ich muss dauernd da nacharbeiten.


Das mod_rewrite-Modul kann grundsätzlich dynamisch/variabel genutzt werden, ohne bei möglichen Änderungen der Artikel daran schrauben zu müssen.


----------



## Jan-Frederik Stieler (20. November 2014)

Hi,
hast du dir mal die default_item.php angeschaut?
Da steht doch alles drinnen was du brauchst.


```
<?php echo $this->item->introtext; ?>

<?php if ($params->get('show_readmore') && $this->item->readmore) :
    if ($params->get('access-view')) :
        $link = JRoute::_(ContentHelperRoute::getArticleRoute($this->item->slug, $this->item->catid));
    else :
        $menu = JFactory::getApplication()->getMenu();
        $active = $menu->getActive();
        $itemId = $active->id;
        $link1 = JRoute::_('index.php?option=com_users&view=login&Itemid=' . $itemId);
        $returnURL = JRoute::_(ContentHelperRoute::getArticleRoute($this->item->slug, $this->item->catid));
        $link = new JURI($link1);
        $link->setVar('return', base64_encode($returnURL));
    endif;
?>
            <p class="readmore">
                <a href="<?php echo $link; ?>">
                    <?php if (!$params->get('access-view')) :
                        echo JText::_('COM_CONTENT_REGISTER_TO_READ_MORE');
                    elseif ($readmore = $this->item->alternative_readmore) :
                        echo $readmore;
                        if ($params->get('show_readmore_title', 0) != 0) :
                           echo JHtml::_('string.truncate', ($this->item->title), $params->get('readmore_limit'));
                        endif;
                    elseif ($params->get('show_readmore_title', 0) == 0) :
                        echo JText::sprintf('COM_CONTENT_READ_MORE_TITLE');
                    else :
                        echo JText::_('COM_CONTENT_READ_MORE');
                        echo JHtml::_('string.truncate', ($this->item->title), $params->get('readmore_limit'));
                    endif; ?></a>
        </p>
<?php endif; ?>
```

Hier auch noch die Frage was, genau willst du den bei den featured items anders als in der Standardausgabe haben?

Bezüglich URL, hast du schonmal in Joomla die Suchmaschinenfreundlichen URLs aktiviert?

Grüße


----------



## SpiceLab (20. November 2014)

Endlich schlägt hier ein Kenner auf


----------



## Jan-Frederik Stieler (20. November 2014)

Grins, naja bin jetzt kein Joomalentwickler arbeite mit Joomla aber trotzdem auch schon seit 2007.


----------



## SpiceLab (20. November 2014)

Na, wenn diese Zeitspanne mal nicht genügt, um mit Fachwissen zu glänzen


----------

