Hola betodaniel61!
En tu código hay una confusión con los nombres de las variables primero, y luego en el caso del input no estás pasando la variable por GET. Por otra parte, si pasas la variable por GET, no necesitas definir un campo oculto. Asimismo, para "imprimir" datos PHP en el HTML necesitas usar las equiquetas apropiadas.
Fíjate si este código funciona.
Código:
<script languaje="JavaScript">
function otra_ventana(direccion) {
var ruta=direccion;
var caracteristicas="toolbar=0, location=0, directories=0, resizable=0, scrollbars=0, height=400, width=600, top=200, left=200";
win=window.open(ruta ,"",caracteristicas);
}
</script>
Luego definido dentro del form:
<!-- no creo que esto sea necesario -->
<input type="hidden" name="idpublicacion" value="<?= $idpublicacion; ?>">
y lo siguiente para ejecutarlo:
<a href="javascript:otra_ventana('aa.php?idpublicacion=<?= $idpublicacion ?>')" class="linkeos">Pregunta al Vendedor</a>
<input type="button" Value="Pregunta al Vendedor" name="..." onClick="javascript:otra_ventana('aa.php?idpublicacion=<?= $idpublicacion ?>')";>
Cuentame como te fue. Saludos!