2013-02-24 2 views
0

Я использую Wordpress с темой конструктора. Я наткнулся на следующий totorial о строительстве легкого применения Crud: http://www.jeasyui.com/tutorial/app/crud3.phpКак правильно вставлять PHP-код в шаблон страницы Wordpress?

Я подгонять его к моим потребностям, правильно работать демо можно найти здесь: http://www.szerelmifajdalomklinika.hu/wp-content/themes/constructor/index2.html#

Код для index2.html является:

<link rel="stylesheet" type="text/css" href="http://www.jeasyui.com/easyui/themes/default/easyui.css"> 
<link rel="stylesheet" type="text/css" href="http://www.jeasyui.com/easyui/themes/icon.css"> 

<style type="text/css"> 
    form{ 
     margin:0; 
     padding:0; 
    } 
    .dv-table td{ 
     border:0; 
    } 
    .dv-table input{ 
     border:1px solid #ccc; 
    } 
</style> 





<script type="text/javascript" src="http://code.jquery.com/jquery-1.6.min.js"></script> 
<script type="text/javascript" src="http://www.jeasyui.com/easyui/jquery.easyui.min.js"></script> 
<script type="text/javascript" src="http://www.jeasyui.com/easyui/datagrid-detailview.js"></script> 
<script type="text/javascript"> 
    $(function(){ 
     $('#dgpartner').datagrid({ 
      view: detailview, 
      detailFormatter:function(index,row){ 
       return '<div class="ddv"></div>'; 
      }, 
      onExpandRow: function(index,row){ 
       var ddv = $(this).datagrid('getRowDetail',index).find('div.ddv'); 
       ddv.panel({ 
        border:false, 
        cache:true, 
        href:'show_form.php?index='+index, 
        onLoad:function(){ 
         $('#dgpartner').datagrid('fixDetailRowHeight',index); 
         $('#dgpartner').datagrid('selectRow',index); 
         $('#dgpartner').datagrid('getRowDetail',index).find('form').form('load',row); 
        } 
       }); 
       $('#dgpartner').datagrid('fixDetailRowHeight',index); 
      } 
     }); 
    }); 
    function saveItem(index){ 
     var row = $('#dgpartner').datagrid('getRows')[index]; 
     var url = row.isNewRecord ? 'save_user.php' : 'update_user.php?partner_id='+row.partner_id; 
     $('#dgpartner').datagrid('getRowDetail',index).find('form').form('submit',{ 
      url: url, 
      onSubmit: function(){ 
       return $(this).form('validate'); 
      }, 
      success: function(data){ 
       data = eval('('+data+')'); 
       data.isNewRecord = false; 
       $('#dgpartner').datagrid('collapseRow',index); 
       $('#dgpartner').datagrid('updateRow',{ 
        index: index, 
        row: data 
       }); 
      } 
     }); 
    } 
    function cancelItem(index){ 
     var row = $('#dgpartner').datagrid('getRows')[index]; 
     if (row.isNewRecord){ 
      $('#dgpartner').datagrid('deleteRow',index); 
     } else { 
      $('#dgpartner').datagrid('collapseRow',index); 
     } 
    } 
    function destroyItem(){ 
     var row = $('#dgpartner').datagrid('getSelected'); 
     if (row){ 
      $.messager.confirm('Confirm','Are you sure you want to remove this user?',function(r){ 
       if (r){ 
        var index = $('#dgpartner').datagrid('getRowIndex',row); 
        $.post('destroy_user.php',{partner_id:row.partner_id},function(){ 
         $('#dgpartner').datagrid('deleteRow',index); 
        }); 
       } 
      }); 
     } 
    } 
    function newItem(){ 
     $('#dgpartner').datagrid('appendRow',{isNewRecord:true}); 
     var index = $('#dgpartner').datagrid('getRows').length - 1; 
     $('#dgpartner').datagrid('expandRow', index); 
     $('#dgpartner').datagrid('selectRow', index); 
    } 
</script> 



<table id="dgpartner" title="Partnerek" style="width:900px;height:250px" 
     url="get_users.php" 
     toolbar="#toolbar" pagination="true" 
     fitColumns="true" singleSelect="true"> 
    <thead> 
     <tr> 
      <th field="partner_nickname" width="50">Partner beceneve</th> 
      <th field="partner_description" width="50">Partner leírása</th> 

     </tr> 
    </thead> 
</table> 
<div id="toolbar"> 
    <a href="#" class="easyui-linkbutton" iconCls="icon-add" plain="true" onclick="newItem()">New</a> 
    <a href="#" class="easyui-linkbutton" iconCls="icon-remove" plain="true" onclick="destroyItem()">Destroy</a> 
</div> 

Я хотел бы сделать это на шаблоне страницы. Его можно найти здесь http://www.szerelmifajdalomklinika.hu/kapcsolati-vazlat/

Код для файла шаблона-шаблона szerelmi-partner_raw.php следующий (abowe вставили в контейнер):

<?php 
/* 
Template Name: Kapcsolat-oldal 
*/ 
/** 
* @package WordPress 
* @subpackage Constructor 
* 
*/ 


get_header(); ?> 
<div id="content" class="box shadow opacity <?php the_constructor_layout_class() ?>"> 
    <div id="container" > 

    <?php $post = get_page(get_query_var('page_id')); $content = apply_filters('the_content', $post->post_content); echo $content; ?> 


     <link rel="stylesheet" type="text/css" href="http://www.jeasyui.com/easyui/themes/default/easyui.css"> 
    <link rel="stylesheet" type="text/css" href="http://www.jeasyui.com/easyui/themes/icon.css"> 

<style type="text/css"> 
     form{ 
      margin:0; 
      padding:0; 
     } 
     .dv-table td{ 
      border:0; 
     } 
     .dv-table input{ 
      border:1px solid #ccc; 
     } 
    </style> 





    <script type="text/javascript" src="http://code.jquery.com/jquery-1.6.min.js"></script> 
    <script type="text/javascript" src="http://www.jeasyui.com/easyui/jquery.easyui.min.js"></script> 
    <script type="text/javascript" src="http://www.jeasyui.com/easyui/datagrid-detailview.js"></script> 
    <script type="text/javascript"> 
     $(function(){ 
      $('#dgpartner').datagrid({ 
       view: detailview, 
       detailFormatter:function(index,row){ 
        return '<div class="ddv"></div>'; 
       }, 
       onExpandRow: function(index,row){ 
        var ddv = $(this).datagrid('getRowDetail',index).find('div.ddv'); 
        ddv.panel({ 
         border:false, 
         cache:true, 
         href:'show_form.php?index='+index, 
         onLoad:function(){ 
          $('#dgpartner').datagrid('fixDetailRowHeight',index); 
          $('#dgpartner').datagrid('selectRow',index); 
          $('#dgpartner').datagrid('getRowDetail',index).find('form').form('load',row); 
         } 
        }); 
        $('#dgpartner').datagrid('fixDetailRowHeight',index); 
       } 
      }); 
     }); 
     function saveItem(index){ 
      var row = $('#dgpartner').datagrid('getRows')[index]; 
      var url = row.isNewRecord ? 'save_user.php' : 'update_user.php?partner_id='+row.partner_id; 
      $('#dgpartner').datagrid('getRowDetail',index).find('form').form('submit',{ 
       url: url, 
       onSubmit: function(){ 
        return $(this).form('validate'); 
       }, 
       success: function(data){ 
        data = eval('('+data+')'); 
        data.isNewRecord = false; 
        $('#dgpartner').datagrid('collapseRow',index); 
        $('#dgpartner').datagrid('updateRow',{ 
         index: index, 
         row: data 
        }); 
       } 
      }); 
     } 
     function cancelItem(index){ 
      var row = $('#dgpartner').datagrid('getRows')[index]; 
      if (row.isNewRecord){ 
       $('#dgpartner').datagrid('deleteRow',index); 
      } else { 
       $('#dgpartner').datagrid('collapseRow',index); 
      } 
     } 
     function destroyItem(){ 
      var row = $('#dgpartner').datagrid('getSelected'); 
      if (row){ 
       $.messager.confirm('Confirm','Are you sure you want to remove this user?',function(r){ 
        if (r){ 
         var index = $('#dgpartner').datagrid('getRowIndex',row); 
         $.post('destroy_user.php',{partner_id:row.partner_id},function(){ 
          $('#dgpartner').datagrid('deleteRow',index); 
         }); 
        } 
       }); 
      } 
     } 
     function newItem(){ 
      $('#dgpartner').datagrid('appendRow',{isNewRecord:true}); 
      var index = $('#dgpartner').datagrid('getRows').length - 1; 
      $('#dgpartner').datagrid('expandRow', index); 
      $('#dgpartner').datagrid('selectRow', index); 
     } 
    </script> 



    <table id="dgpartner" title="Partnerek" style="width:900px;height:250px" 
      url="get_users.php" 
      toolbar="#toolbar" pagination="true" 
      fitColumns="true" singleSelect="true"> 
     <thead> 
      <tr> 
       <th field="partner_nickname" width="50">Partner beceneve</th> 
       <th field="partner_description" width="50">Partner leírása</th> 

      </tr> 
     </thead> 
    </table> 
    <div id="toolbar"> 
     <a href="#" class="easyui-linkbutton" iconCls="icon-add" plain="true" onclick="newItem()">New</a> 
     <a href="#" class="easyui-linkbutton" iconCls="icon-remove" plain="true" onclick="destroyItem()">Destroy</a> 
    </div> 

    </div><!-- id='container' --> 
    <?php get_constructor_sidebar(); ?> 
</div><!-- id='content' --> 
<?php get_footer(); ?> 

Как вы можете видеть, второй вариант делает не работает правильно. Даже заголовок таблицы отображается плохо. Как я могу соответствующим образом импортировать этот код в шаблон страницы?

Некоторые мысли о том, что проблема может быть: В называемые файлы, (например, get_users.php), есть include 'conn.php'; с $conn = @mysql_connect(xxx); возможно, это должно быть взаимозаменяемыми с подключением к WordPress по умолчанию? Если да, то как?

Упомянутые файлы включают в себя, и есть некоторые вещи за пределами header.php темы. Если я копирую все там, это не решит проблему.

Благодарим за помощь.

Sziro

+0

«Как вы можете видеть, второй вариант работает неправильно». На самом деле мы не можем видеть. Что не работает во второй версии, что вам нужно для работы? –

+0

Я включил ссылки для первого и второго вариантов: http://www.szerelmifajdalomklinika.hu/wp-content/themes/constructor/index2.html# и http://www.szerelmifajdalomklinika.hu/kapcsolati-vazlat/. Что нужно для работы, это листинг, добавление нового элемента, модификация, удаление. Они (индекс html и шаблон php) находятся в одном каталоге и вызывают одни и те же файлы php. – Sziro

ответ

0

Это на самом деле работает, если я IFrame указанный HTML-страницы.

<iframe name="FRAME2" src="http://www.szerelmifajdalomklinika.hu/wp-content/themes/constructor/index2.html" frameborder="1" width="450" height="400"></iframe> 

к шаблону страницы.

Смежные вопросы