Jump to content


Photo

Modificando Script Easytube Para Redtube


  • Faça o login para participar
1 reply to this topic

#1 Ligeirinho2005

Ligeirinho2005

    Novato no fórum

  • Usuários
  • 2 posts
  • Sexo:Não informado

Posted 10/08/2008, 16:46

Boa tarde!

Estou a procura de um script para wordpress, mas não encontrei, então resolvi pegar um pronto, para modificar, consegui fazer o mesmo funcionar, mas tem um detalhe que não consegui.
Na faculdade aprendi sobre incremento e decremento, porém nunca utilizei com PHP, e agora que surgiu o problema, pensei comigo mesmo, nossa como dei bobeira.
É o seguinte, o script abaixo, ele funciona da seguinte forma:

Eu insiro um post e coloco o seguinte:

[youtube:http://www.youtube.com/watch?v=l9nUbTC_2UM]

O script pega o endereço digitado, conta os caracteres e insere no codigo do blog o referido video.


|----------------------------------------| <-- Ele descarta essa parte e pega o restante

Ele pega esse trecho do endereço do youtube que é padrão para todos os videos e conta os caracteres, para poder inserir no blog o video que eu postar atraves de chaves.

Até ai tudo bem, ele já esta preparado para funcionar com o Googlevideo e o Youtube.

Mas descobri um site na net, que tem videos, e permite postar em blog, só que não achei script para o mesmo, analisando o codigo abaixo resolvi tentar montar. Consegui, porém não consegui fazer ele pegar o trecho certo do endereço.
Na faculdade programei em C++ e o PHP é parecido.
Se alguem puder me ajudar eu agradeço.


Código original do Script

<?php

add_filter('the_content','tube_content');
add_filter('the_content','googlevideo_content');

function tube_content($content) {

    $regex = '/\[youtube:(.*?)]/i';

	preg_match_all( $regex, $content, $matches );

	for($x=0; $x<count($matches[0]); $x++)

	{

		$parts = explode(" ", $matches[1][$x]);

		if(count($parts) > 1)

		{

			$vid= explode('=',$parts[0],2);

			$vid = $vid[1];

			$width = $parts[1];

			if(count($parts) > 2)

			{

				$height = $parts[2];

			}

			else

			{

				$height = "";

			}

			$replace = '<object class="embed" width="'.$width.'" height="'.$height.'" type="application/x-shockwave-flash" data="http://www.youtube.com/v/'.$vid.'"><param name="movie" value="http://www.youtube.com/v/'.$vid.'" /><param name="wmode" value="transparent" /><em>You need to a flashplayer enabled browser to view this YouTube video</em></object>';

		}

		else

		{

			$vid= explode('=',$matches[1][$x]);

			$vid = $vid[1];

			$replace = '<object class="embed" width="425" height="355" type="application/x-shockwave-flash" data="http://www.youtube.com/v/'.$vid.'"><param name="wmode" value="transparent" /><param name="movie" value="http://www.youtube.com/v/'.$vid.'" /><em>You need to a flashplayer enabled browser to view this YouTube video</em></object>';

		}



		$content = str_replace($matches[0][$x], $replace, $content);

	}



	return $content;



}



function googlevideo_content($content)

{

    $regex = '/\[googlevideo:(.*?)]/i';

	preg_match_all( $regex, $content, $matches );

	for($x=0; $x<count($matches[0]); $x++)

	{

		$parts = explode(" ", $matches[1][$x]);

		if(count($parts) > 1)

		{

			$vid= explode('=',$parts[0]);

			$vid = $vid[1];

			$width = $parts[1];

			if(count($parts) > 2)

			{

				$height = $parts[2];

			}

			else

			{

				$height = "";

			}

			$replace = '<object class="embed" width="'.$width.'" height="'.$height.'" type="application/x-shockwave-flash" data="http://video.google.com/googleplayer.swf?docId='.$vid.'"><param name="movie" value="http://video.google.com/googleplayer.swf?docId='.$vid.'" /><em>You need to have flashplayer enabled to watch this Google video</em></object>';

		}

		else

		{

			$vid= explode('=',$matches[1][$x]);

			$vid = $vid[1];

			$replace = '<object class="embed" width="425" height="350" type="application/x-shockwave-flash" data="http://video.google.com/googleplayer.swf?docId='.$vid.'"><param name="wmode" value="transparent" /><param name="movie" value="http://video.google.com/googleplayer.swf?docId='.$vid.'" /><em>You need to have flashplayer enabled to watch this Google video</em></object>';

		}

		$content = str_replace($matches[0][$x], $replace, $content);

	}

	return $content;
}

?>

Novo código sendo modificado para o site redtube.com

<?php
add_filter('the_content','redtube_content');

function redtube_content($content)
{

    $regex = '/\[redtube:(.*?)]/i';

	preg_match_all( $regex, $content, $matches );

	for($x=0; $x<count($matches[0]); $x++)

	{

		$parts = explode(" ", $matches[1][$x]);

		if(count($parts) > 1)

		{

			$vid= explode('=',$parts[0]);

			$vid = $vid[1];

			$width = $parts[1];

			if(count($parts) > 2)

			{

				$height = $parts[2];

			}

			else

			{

				$height = "";

			}

			$replace = '<object class="embed" width="'.$width.'" height="'.$height.'" type="application/x-shockwave-flash" data="http://embed.redtube.com/player/?id='.$vid.'&style=redtube">
			<param name="movie" value="http://embed.redtube.com/player/?id='.$vid.'&style=redtube" />
			<em>Voce nao tem o flashplayer instalado para ver esse video.</em></object>';

		}

		else

		{

			$vid= explode('=',$matches[1][$x]);

			$vid = $vid[1];

			$replace = '<object class="embed" width="344" height="434" type="application/x-shockwave-flash" data="http://embed.redtube.com/player/?id='.$vid.'">
			<param name="wmode" value="transparent" />
			<param name="movie" value="http://embed.redtube.com/player/?id='.$vid.'&style=redtube" />
			<em>Voce nao tem o flashplayer instalado para ver esse video.</em></object>';

		}



		$content = str_replace($matches[0][$x], $replace, $content);

	}



	return $content;

}





?>
add_filter('the_content','redtube_content');



function redtube_content($content)

{

    $regex = '/\[redtube:(.*?)]/i';

	preg_match_all( $regex, $content, $matches );

	for($x=0; $x<count($matches[0]); $x++)

	{

		$parts = explode(" ", $matches[1][$x]);

		if(count($parts) > 1)

		{

			$vid= explode('=',$parts[0]);

			$vid = $vid[1];

			$width = $parts[1];

			if(count($parts) > 2)

			{

				$height = $parts[2];

			}

			else

			{

				$height = "";

			}

A parte marcada no fim é a parte responsavel por pegar o endereço.
Segue em anexo os dois scripts
Gostaria que me ajudassem, mas se for possível comentar para que eu possa aprender ficarei grato.
Pois acredito que alguém já deve ter tido essa duvida de como pegar parte de um endereço.
Uma utilidade disso seria ocultar o endereço do site, para ele não mostrar o endereço completo do arquivo onde esta hospedado.
Ou seja, acredito que seja util a todos.

Obrigado

Marcelo Cardoso

Attached Files


Ligeirinho - Rio de Janeiro

Hospede seu blog de graça - Entre em contato - http://www.blogdoligeirinho.com.br

#2 Spyderbobo

Spyderbobo

    Novato no fórum

  • Usuários
  • 4 posts
  • Sexo:Masculino
  • Localidade:criciuma
  • Interesses:programação, jogos, filmes

Posted 07/05/2012, 23:48

Cara, sei que ja faz tempo este teu post, mas se por acaso conseguiu resolver esse problema poderia me passar a solucao, gostei da tua ideia. Vlw






1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq