Template for custom form not working I am trying to theme a custom using a template file but unfortunately I am not getting it by using the below method.
listing.module

function listing_menu() {
  $items['ad-listing'] = array(
    'page callback' =&gt; 'adlist_template',
    'access callback' =&gt; TRUE,
    'type' =&gt; MENU_CALLBACK,

  );
      return $items;
    }
function listing_form($form, &amp;$form_state) {

$form['title'] = array(
    '#type' =&gt; 'textfield',
    '#attributes' =&gt; array('placeholder' =&gt; t('Title')),
);
$form['category'] = array(
    '#type' =&gt; 'select',
    '#options' =&gt; array(
        'default' =&gt; '- Category -',
        'Car' =&gt; 'Car',
        'Van' =&gt; 'Van',
    ),
);
 return $form
}

function listing_theme($existing, $type, $theme, $path){
return array(
  'listing_form' =&gt; array(
    'render element' =&gt; 'form',
    'template' =&gt; 'adlisting',
    'path' =&gt; drupal_get_path('module', 'listing') . '/form',
  )
    );
}
function adlist_template(){
    return theme('listing_form');
}


listing/form/adlisting.tpl.php

&lt;div class="row"&gt;
  &lt;div class="small-12 medium-12 large-8"&gt;

      &lt;div class="row"&gt;
          &lt;div class="small-12 columns"&gt;
              &lt;h5 class=""&gt;Contact Information&lt;/h5&gt;
          &lt;/div&gt;
      &lt;/div&gt;

      &lt;div class="row"&gt;
          &lt;div class="small-12 large-6 medium-6 columns"&gt;
              &lt;?php print render($form['title']); ?&gt;
          &lt;/div&gt;
      &lt;/div&gt;

      &lt;div class="row"&gt;
          &lt;div class="small-12 medium-6 large-6 columns"&gt;
              &lt;?php print render($form['category']); ?&gt;
          &lt;/div&gt;

  &lt;div class="row"&gt;
      &lt;div class="small-12 medium-12 large-8 large-offset-2 columns"&gt;
          &lt;?php print render($form['ad_submit']); ?&gt;
      &lt;/div&gt;
  &lt;/div&gt;





I tried to follow this thread How to a use a template file to theme a form? but did not help me, neither other solutions
There were 2 major changes on the code above 


I changed the form name to listing_adform() 
I changed the hook_menu to call my form not theme



  $items['ad-listing'] = array(
    //'page callback' =&gt; 'adlist_template',
    'access callback' =&gt; TRUE,
    'type' =&gt; MENU_CALLBACK,
    'page callback' =&gt; 'drupal_get_form',
    'page arguments' =&gt; array('listing_adform'),
  );



Flushed the cache, and I saw my fields rendering using my template in form/adlisting.tpl.php