"Tovább gomb" kicserélése kis képre

CsermakTom képe

Üdv!

Szeretném a Bevezető nézetben megjelenő Tovább gombot/linket kicserélni egy általam szerkesztett is képre. Hogy ne az jelenjen meg, hogy Tovább, hanem egy kis képecske.
Ha valaki tud benne segíteni, örömmel megköszönöm neki!

Üdv:Tamás

Drupal verzió: 
Fórum: 
Nagy Gusztáv képe

Pl. itt, a drupal.hu sminkjén egy div class="morelinks" elemet (és a gyerekeit) kellene megvizsgálni. Én sminkelném: adnék neki egy háttérképet, és a szöveget meghagynám.

De ez csak a gyors megközelítés, van szebb és jobb is.

0
0

Nagy Gusztáv

Jenő képe

A következő módon oldanám meg:
template.php-ben az alábbi kód (nitobe sminkből copy-zva és módosítva)

function sminkneve_read_more_link($node) {
  if ($node != NULL) {
    $link_text  = t('<img class="teszolegesen" src="'.base_path().path_to_theme().'/image/kep.png" alt="Bővebben" />');
    $link_title = t('Bővebben: !title.', array('!title' => $node->title));
    $options = array(
      'attributes' => array('title' => $link_title),
      'html' => TRUE,
    );
    return l($link_text, 'node/' . $node->nid, $options);
  }
 
  return '';
}

A node.tpl.php-ban pedig:
<?php if ($teaser && $readmore): ?>
      <span class="readmore"><?php print sminkneve_read_more_link($node); ?></span>
<?php endif; ?>
0
0
aboros képe

az, hogy cssben kap osztályt és az alapján háttérképet nem megoldás, nem ez volt a kérdés. :)

a második már majdnem jó, csak túl nyakatekert és amúgy is ordas gázok vannak benne (nem csinálunk ilyet, hogy img src='... theme('image' meg dísznek van nem?) ;), meg a $links változóddal is konflikt lesz. nevezetesen, a második módszer nem az eredeti tovább linket cseréli képre, hanem egy újat vezet be. ettől még az eredeti megmarad a $links -ben, tehát két tovább linkje lesz a nodenak. lehet mindenfélét ügyeskedni, hogy display:none az eredetire vagy előfeldolgozóban kivágni a $links -ből sztringműveletekkel vagy esetleg újrarenderelni a $linkset, de az alapvető megközelítéssel van a probléma, szóval az említettek közül egyik se túl jó.

megmutatom én hogyan csinálnám, aztán persze mindenki eldöntheti maga, hogy ő hogyan. :)

template.php:

function playground_preprocess_node(&$vars) {
	$node = $vars['node'];
 
	if (isset($node->links['node_read_more']['href'])) {
		$node->links['node_read_more']['title'] = theme('image', path_to_theme() . '/images/read_more.png');
		$node->links['node_read_more']['html'] = TRUE;
		$vars['links'] = theme('links', $node->links);
	}
}

remélem világos, most eltekintenék attól, hogy el is magyarázzam soronként, szerintem érthető, hogy mit csinál és miért. ha mégse, kérdezz!

0
0

-
clear: both;

Den képe

a morelinks css, kb:
{
display:block;
background: url(image) no-repeat left top; // háttérkép beállít
width: px; -> kép szélessége
height: px; -> kép magassága

text-indent: -1000em; // seo barát megoldás
}

Ha pedig inline módon kell megjeleníteni, akkor display:block; helyhett display:inline; majd paddingok és line-height-el belőni.

Szerintem.

0
0
aboros képe

sőt, ez talán még jobb is, bár kinek a pap, kinek a papné. :)

0
0

-
clear: both;

Jenő képe

Igazad van, a nitobe sminkben nincs kiíratva a $links, így nincs két tovább link. Köszi a javítást.

0
0
CsermakTom képe

Köszönöm! Sikerült beállítani!

0
0