    el-loc
    (fn [el-loc]
      (when-let [name-loc (cdzx/xml1-> el-loc :entry :string)]
-       [(cdzx/text name-loc) (cz/right name-loc)]))))
+       [(cdzx/text name-loc) (cz/right name-loc)]))
+   false))
+
+(defmethod mi/deconstruct-node :code-templates [_ file-path el-loc]
+  (deconstruct-node
+   file-path
+   el-loc
+   (fn [el-loc]
+     (when-let [script-loc (cdzx/xml1-> el-loc :properties :code)]
+       [(cdzx/xml1-> el-loc :name cdzx/text) script-loc]))
+   false))
 
 (defn name-script-sequence
   "Take a script loc to find and build the script name."

(defn deconstruct-node
  "Takes an xml node representing one of our major api elements and returns one or
  more deconstructed parts with filenames and a zip loc for the content."
  [file-path el-loc find-name-val]
  (let [base-path (mf/remove-extension file-path)]
    (loop [el-loc el-loc
           deconstruction []]
      ;; (log/info (str "tag: " (:tag (cz/node el-loc))))

     (some (fn [[name script]]
             (when-let [script-loc (script el-loc)]
               [(name script-loc) script-loc]))
           channel-deconstructors))
   true))

(comment

