我需要用php链接替换javascript中的一个链接。
javascript行:
'<a href="' + res.attachment.guid + '" target="_blank">
php:
echo '<a href="' . wp_get_attachment_url($value->ID) . '" target="_blank">
javascript上下文:
if (res.success) {
$('.no_file_upload').remove();
var template = '<li class="attachment-' + res.attachment.ID + '">' +
'<p>' + res.attachment.post_title + '<span>' +
'<a href="' + res.attachment.guid + '" target="_blank"><i class="fa fa-cloud-download" aria-hidden="true"></i></a>' +
'<a href="#" data-post-id="' + res.attachment.ID + '" data-project-id="' + res.attachment.project_id + '" data-file-name="' + res.attachment.post_title + '" class="delete-attach-file"><i class="fa fa-times" aria-hidden="true" data-post-id="' + res.attachment.ID + '" data-project-id="' + res.attachment.project_id + '" data-file-name="' + res.attachment.post_title + '"></i></a>' +
'</p></span>' +
'<span>' + res.attachment.post_date + '</span>' +
'</li>';
我尝试过这种方法,但失败了:
<?php echo '<a href="' . wp_get_attachment_url($value->ID) . '" target="_blank"> ?>
因此,我的Wordpress网站正在使用WP Offload S3 Lite插件将所有文件上传到Amazon S3。我不得不更改一些模板文件以设法在网站上显示正确的Amazon S3链接,我使用wp_get_attachment_url($ value-> ID)更改了href链接。剩下的唯一一个内容是一个javascript文件,该文件仍在加载错误的下载链接。我需要使其正常工作。
答案 0 :(得分:0)
1。 当您拥有文件名时,可以使用自定义函数生成自己的链接。 请让我知道是否有任何问题。
答案 1 :(得分:0)
javascript行
@Query(nativeQuery = true,
value = "SELECT viw.* \n" +
"FROM viwFinanceiro_Extrato_DocumentosPesquisar viw \n" +
"WHERE viw.CodigoGNPessoas IN (:CodigoGNPessoas) AND \n" +
"(viw.DocumentoDataEmissao >= :DataInicial AND viw.DocumentoDataEmissao <= :DataFinal) AND \n" +
"viw.CodigoFinanceiroFNDocumentosSituacaoFinanceira IN (:CodigoFinanceiroFNDocumentosSituacaoFinanceira) AND \n" +
"viw.CodigoFinanceiroFNTiposDocumentos IN (:CodigoFinanceiroFNTiposDocumentos) AND \n" +
"viw.DocumentoDigitado = CASE WHEN :NumeroDocumento IS NULL OR :NumeroDocumento = '' THEN viw.DocumentoDigitado ELSE :NumeroDocumento END AND \n" +
"viw.DocumentoVerificado = CASE WHEN :IndicadorDocumentoVerificado = 3 THEN viw.DocumentoVerificado ELSE :IndicadorDocumentoVerificado END AND \n" +
" ************ HERE CODE FROM WHERE ************ \n" +
" ORDER BY viw.DocumentoDataEmissao")
Collection<ViwFinanceiroExtratoDocumentosPesquisar> load(@Param("CodigoGNPessoas") List<Long> CodigoGNPessoas,
@Param("DataInicial") String DataInicial,
@Param("DataFinal") String DataFinal,
@Param("CodigoFinanceiroFNDocumentosSituacaoFinanceira") List<Integer> CodigoFinanceiroFNDocumentosSituacaoFinanceira,
@Param("CodigoFinanceiroFNTiposDocumentos") List<Integer> CodigoFinanceiroFNTiposDocumentos,
@Param("NumeroDocumento") String NumeroDocumento,
@Param("IndicadorDocumentoVerificado") Integer IndicadorDocumentoVerificado)
完整的Javascript
<a href="' + cloudfront_url + res.attachment.guid + '" target="_blank">
答案 2 :(得分:0)
您正在尝试混合使用Javascript和PHP代码。这是可能的,但让我解释一下它是如何工作的。 PHP代码在服务器端执行,而Javascript在客户端执行。 因此,如果您在javacsript代码中写下任何php代码,则服务器将HTML页发送给用户时将执行该代码。页面加载后,您将无法在javascript代码中调用任何PHP函数。
答案 3 :(得分:0)
在执行JavaScript客户端之前,已在服务器中执行了PHP代码,在这种情况下,唯一的方法是使用AJAX调用从服务器获取下载链接。 另一方面,有一个选项可以在PHP内编写JavaScript,但不能相反。