← Joomla

Trocar link por imagem.

Lida 5667 vezes

Offline

pedro teixeira 
Membro
Mensagens 237 Gostos 0
Troféus totais: 22
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Level 4 Level 3 Level 2 Level 1 100 Posts 50 Posts

boas pessoal,

Estou com um problema que nao estou a ver o que seja. No meu site, www.musicoson.com quando se vai ver um anuncio, em baixo aparece um link enviar email.  Gostava de trocar esse link por uma imagem.

O que estou a fazer, é vou ao file adsense.html.php e crio uma class,

<div class="adsmanager_Contactar">
<img src="templates/<?php echo $this->template ?>/images/anunciar.jpeg" alt=" anunciar=" />

</div>

Ao fazer isto a imagem não deveria aparecer lá? depois é so aplicar o css?
Podem ajudar.

Vejam no anuncio no link (enviar email) http://www.musicoson.com/home/servicos/aulas/aulas-piano-jazz-pop-bossa-nova-classico

cumprimentos
Offline

epsy 
Membro
Mensagens 553 Gostos 1
Feedback +1

Troféus totais: 25
Trófeus: (Ver todos)
Search Windows User Super Combination Combination Topic Starter Poll Voter Level 4 Level 3 Level 2 Level 1

A imagem é sempre a mesma, ou varia em função do template?

Se for sempre a mesma, é melhor colocares um caminho fixo para a imagem, por ex.:
colocas a imagem na pasta onde esta o logo (templates/musicosontema/images/) e indicas esse caminho dentro do link:

Código: (html4strict) [Seleccione]
<div class="adsmanager_Contactar">
<a href="http://www.musicoson.com/home/aulas-piano-jazz-pop-bossa-nova-classico/show_message_form">
<img src="templates/musicosontema/images/anunciar.jpg" alt=" anunciar=" />
</a>
</div>
Offline

pedro teixeira 
Membro
Mensagens 237 Gostos 0
Troféus totais: 22
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Level 4 Level 3 Level 2 Level 1 100 Posts 50 Posts

obrigado, a imagem ja aparece.
A imagem é sempre a mesma, mas parar aparecer em todos anuncios, se eu meter esse link na imagem, ao responder a outros anuncios a mensagem é sempre enviada para o mesmo anuncio do link da imagem,.

Há algum codigo que remeta o link para o anuncio em questão?

obrigado mais uma vez

A imagem é sempre a mesma, ou varia em função do template?

Se for sempre a mesma, é melhor colocares um caminho fixo para a imagem, por ex.:
colocas a imagem na pasta onde esta o logo (templates/musicosontema/images/) e indicas esse caminho dentro do link:

Código: (html4strict) [Seleccione]
<div class="adsmanager_Contactar">
<a href="http://www.musicoson.com/home/aulas-piano-jazz-pop-bossa-nova-classico/show_message_form">
<img src="templates/musicosontema/images/anunciar.jpg" alt=" anunciar=" />
</a>
</div>

Offline

epsy 
Membro
Mensagens 553 Gostos 1
Feedback +1

Troféus totais: 25
Trófeus: (Ver todos)
Search Windows User Super Combination Combination Topic Starter Poll Voter Level 4 Level 3 Level 2 Level 1

Repara que o código que coloquei no post era só um exemplo, para resolver o problema da imagem. Claro que o href do link tem que ser construído de forma dinâmica.
Não conheço o joomla para colocar aqui o código exacto, mas vê no ficheiro a maneira como era construído o href do link, e colocas igual.

No código que indico a seguir deves substituir os pontos de interrogação, pelo código que estava antes.


Código: (html4strict) [Seleccione]
<div class="adsmanager_Contactar">
<a href="????????">
<img src="templates/musicosontema/images/anunciar.jpg" alt=" anunciar=" />
</a>
</div>
Offline

pedro teixeira 
Membro
Mensagens 237 Gostos 0
Troféus totais: 22
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Level 4 Level 3 Level 2 Level 1 100 Posts 50 Posts

Hum ok já entendi, Estou aqui a ver isto. não aparece link o codigo aparece assim.

<div class="adsmanager_ads_contact">
               <?php if (@$positions[4]->title) {$strtitle = adsmanager_html::getLangDefinition($positions[4]->title);} ?>
               <?php echo "<b>".@$strtitle."</b>";
               if ($show_contact == 1) {      
                  if (isset($fDisplay[5]))
                  {      
                     foreach($fDisplay[5] as $field)
                     {   
                        adsmanager_html::showFieldValue($row,$field,$field_values,$conf->email_display,$option,$itemid,1,$plugins); /* 1 = Ad Mode */
                     }
                  }
                  if (($row->userid != 0)&&($conf->allow_contact_by_pms == 1))
                  {
                     $pmsText= sprintf(ADSMANAGER_PMS_FORM,$row->user);
                     if (adscheckJoomlaVersion() == 1)  // Joomla 1.5 only working with UddeIm
                        $pmsForm = sefRelToAbs("index.php?option=com_uddeim&task=new&recip=".$row->id);
                     else
                        $pmsForm = sefRelToAbs("index.php?option=$option&amp;page=show_message_form&amp;mode=1&amp;adid=".$row->id."&amp;Itemid=".$itemid);
                     echo '<a href="'.$pmsForm.'">'.$pmsText.'</a><br />';
                  }
               }
               else
               {
                  echo ADSMANAGER_CONTACT_NOT_LOGGED;


Penso que seja este que faz aparecer o formulário de contacto.

adsmanager_html::showFieldValue($row,$field,$field_values,$conf->email_display,$option,$itemid,1,$plugins); /* 1 = Ad Mode */

mas não estou a conseguir incorporar na imagem.
Pode me ajudar,
Obrigado


Repara que o código que coloquei no post era só um exemplo, para resolver o problema da imagem. Claro que o href do link tem que ser construído de forma dinâmica.
Não conheço o joomla para colocar aqui o código exacto, mas vê no ficheiro a maneira como era construído o href do link, e colocas igual.

No código que indico a seguir dever substituir os pontos de interrogação, pelo código que estava antes.


Código: (html4strict) [Seleccione]
<div class="adsmanager_Contactar">
<a href="????????">
<img src="templates/musicosontema/images/anunciar.jpg" alt=" anunciar=" />
</a>
</div>
Offline

epsy 
Membro
Mensagens 553 Gostos 1
Feedback +1

Troféus totais: 25
Trófeus: (Ver todos)
Search Windows User Super Combination Combination Topic Starter Poll Voter Level 4 Level 3 Level 2 Level 1



<
Código: (html4strict) [Seleccione]
div class="adsmanager_ads_contact">

(...)

if (($row->userid != 0)&&($conf->allow_contact_by_pms == 1))
{
//$pmsText= sprintf(ADSMANAGER_PMS_FORM,$row->user);




if (adscheckJoomlaVersion() == 1)  // Joomla 1.5 only working with UddeIm
$pmsForm = sefRelToAbs("index.php?option=com_uddeim&task=new&recip=".$row->id);
else
$pmsForm = sefRelToAbs("index.php?option=$option&amp;page=show_message_form&amp;mode=1&amp;adid=".$row->id."&amp;Itemid=".$itemid);
 echo '<a href="'.$pmsForm.'"><img src="templates/musicosontema/images/anunciar.jpg" alt=" anunciar=" /></a><br />';

}


(...)

Dei uma vista de olhos por alto e se percebi bem a coisa, assim já deve dar.
Atenção ás linhas 7 e 16.
A linha 7 coloca em "comment" uma variável e a linha 16 insere a imagem, dentro de link.

P.S.

Desculpa-lá tinha-me enganado, experimenta assim, como está agora. Atenção à linha 16.
Offline

pedro teixeira 
Membro
Mensagens 237 Gostos 0
Troféus totais: 22
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Level 4 Level 3 Level 2 Level 1 100 Posts 50 Posts

Se alguém tiver sugestões são bem-vindas, continuo a não conseguir,
EU penso que tenho que por o formulario que abre com o link abrir na imagem, mas o furmulario é um script.

alguem dá alguma dica?
Offline

pedro teixeira 
Membro
Mensagens 237 Gostos 0
Troféus totais: 22
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Level 4 Level 3 Level 2 Level 1 100 Posts 50 Posts

Acho que não vou conseguir mesmo fazer o que quero.

Alguem me pode ajudar a fazer algo deste género?

colocar um envelope ao lado do link?

como este site    http://www.ilmercatinoonline.it/index.php?/categorie-annunci/8615/batteria-acustica-nuova.html?ad_regione=

cumprimentos
Offline

epsy 
Membro
Mensagens 553 Gostos 1
Feedback +1

Troféus totais: 25
Trófeus: (Ver todos)
Search Windows User Super Combination Combination Topic Starter Poll Voter Level 4 Level 3 Level 2 Level 1

Pedro, para colocar a imagem no link do form tens de fazer assim:

na linha 246 do ficheiro "adsmanager.html.php",  substituis essa linha:

Código: (html4strict) [Seleccione]
echo '<a href="'.$emailForm.'">'.ADSMANAGER_EMAIL_FORM.'</a><br />';
por estas:
Código: (html4strict) [Seleccione]

//echo '<a href="'.$emailForm.'">'.ADSMANAGER_EMAIL_FORM.'</a><br />';
echo '<a href="'.$emailForm.'"><img src="##caminho_para_a_imagem.jpg##"/></a><br />';